首页 > 解决方案 > 如何在屏幕上显示我使用 react 推送到 firebase 的对象?firebase 中的对象如何被删除?

问题描述

我对 React 和 Firebase 很陌生。我正在尝试显示代码中提到的对象 newData 。我已经输入了一个值,但后来它在附加的屏幕中显示了错误。

在此处输入图像描述

我正在创建一个菜单应用程序,因此我想将菜单添加到 firebase 中,同时也返回当前菜单。我怎么能从火力基地回来?如何更新或删除 Firebase 中对象中已经存在的数据?有什么方法可以访问我之前上传的对象吗?假设我推送一个包含菜品和价格的菜单,然后我如何删除或更新它。(每道菜)附上数据库的图像。

在此处输入图像描述

componentWillMount(){ /* 创建对 Firebase 数据库中消息的引用 */

    let messagesRef = fire.database().ref('vendor/'+this.state.Day+'/'+this.state.Vendor+'/dishname').orderByKey().limitToLast(100);
    messagesRef.on('child_added', snapshot => {
      /* Update React   state when message is added at Firebase Database */
      let message1 = { text: snapshot.val(), id: snapshot.key };
      this.setState({ messages: [message1].concat(this.state.messages) });
    })
  }
  addMessage(e){
    let messagesR = fire.database().ref('vendor/'+this.state.Day+'/'+this.state.Vendor+'/dishname').orderByKey().limitToLast(100);
    messagesR.on('child_added', snapshot => {
      /* Update React   state when message is added at Firebase Database */
      let message1 = { text: snapshot.val(), id: snapshot.key };
      this.setState({ messages: [message1].concat(this.state.messages) });
    })

    var newData={
    Type: this.inputE3.value,
    Dish: this.inputEl.value,
    Price : this.inputE2.value
    }

    fire.database().ref('vendor/'+this.state.Day+'/'+this.state.Vendor+'/dishname').push(newData);
    this.inputEl.value = ''; 
  this.inputE2.value = ''; 
  this.inputE3.value = ''; 

  } 

标签: reactjsfirebasefirebase-realtime-database

解决方案


推荐阅读