我正在尝试将当前状态数据设置为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>
);
}
答案 0 :(得分:2)
我认为这里肯定存在拼写错误。
firebase.database().ref('users/'+user.iud)
尝试使用
firebase.database().ref('users/'+user.uid)