将数据发布到Firebase(React)

时间:2017-05-18 00:13:21

标签: reactjs firebase firebase-realtime-database

我正在尝试将当前状态数据设置为Firebase,但每当我点击“提交”时,都不会发布任何内容。初始状态设置在下面的代码之上(不包括在内)。

以下是我尝试提交数据的地方

   handleSubmit(evt){
    var user = firebase.auth().currentUser;

    firebase.database().ref('users/'+user.iud).set({
      title: this.state.answers.title,
      location: this.state.answers.location,
      description: this.state.answers.description
    });

  }

输入数据设置为状态。

  handleChange(evt){

    const target = evt.target
    const name = target.name
    const value = target.value

    this.setState({
      answers: {
        [name]: value
      }
    })

    console.log(this.state.answers)
  }

正在呈现什么

  render(){
    return(
      <div>
        <form>

          <label>Title of Listing:</label>
          <input value={this.state.answers.title} name="title" type='text' placeholder="title" onChange={(e) => this.handleChange(e)}/>

          <label>Location:</label>
          <input value={this.state.answers.location} name="location" type='text' placeholder="location" onChange={(e) => this.handleChange(e)}/>
          <br />

          <label>Description:</label>
          <textarea value={this.state.answers.description} name="description" type='text'placeholder='description' onChange={(e) => this.handleChange(e)}/>

          <br />
          <input type="submit" value="submit" onSubmit={(evt) => this.handleSubmit(evt)}/>

        </form>
      </div>
    );
  }

1 个答案:

答案 0 :(得分:2)

我认为这里肯定存在拼写错误。

 firebase.database().ref('users/'+user.iud)

尝试使用

firebase.database().ref('users/'+user.uid)