私の行うべきこと編集方法に問題があります。React - フォーム提出+設定状態
フォームには入力と送信ボタンがあり、最初にフォームを送信するとすべて正常に動作しますが、2回目にしようとすると、メソッドにpreventDefaultがあってもページを更新するように見えます。
defaultValueを削除しようとしましたが、動作しませんでした。
編集方法
editedData(e) {
e.preventDefault();
let editedValue = this.editedData.value;
let objectKey = this.props.data.key;
let userId = firebase.auth().currentUser.uid;
let dbRef = firebase.database().ref(`users/${userId}/notes/${objectKey}`);
dbRef.update({
value: editedValue
})
this.setState({
editing: false
})
}
フォーム
if(this.state.editing) {
editingTemplate = (
<form onSubmit={this.editedData}>
<input className="form-input" type="text" defaultValue={this.props.data.value} ref={ref => this.editedData = ref} />
<input type="submit" value="Save" />
</form>
);
}
素晴らしい、歓声。 私はそれが簡単に修正されてうれしいです!私の悪い! –