我要做的是,将输入字段值存储到一个状态,然后,如果用户单击保存按钮或存储按钮,则输入字段将消失,因此编辑将为false.我正在尝试检查状态用户单击保存按钮时的长度.问题出在那里.它说是这个错误:Uncaught TypeError: Cannot read property 'state' of null
,但我已经存储了数据editData
状态为什么,请你能告诉我吗?
这是代码,以便更好地理解
class EditData extends Component {
constructor(props) {
super(props);
this.handleChange = this.handleChange.bind(this);
this.state = {
editData: ''
}
}
handleChange(e) {
this.setState({editData: e.target.value})
}
save() {
if (this.state.editData.length !== 0) {
this.setState({isEditing: false});
console.log(this.state.editData + 'Added on your database')
} else {
alert('Hahah Are you')
}
// console.log(this.refs.valTo.value);
}
render() {
return (
<div>
<input onChange={this.handleChange} type="text" defaultValue={this.props.data} /> <button onClick={this.save}>Save</button> <button>cancel</button>
</div>
);
}
}
Run Code Online (Sandbox Code Playgroud)