【发布时间】:2016-09-22 11:44:59
【问题描述】:
我有一个简单的反应组件,我认为它有一个受控输入的表单:
import React from 'react';
export default class MyForm extends React.Component {
constructor(props) {
super(props);
this.state = {}
}
render() {
return (
<form className="add-support-staff-form">
<input name="name" type="text" value={this.state.name} onChange={this.onFieldChange('name').bind(this)}/>
</form>
)
}
onFieldChange(fieldName) {
return function (event) {
this.setState({[fieldName]: event.target.value});
}
}
}
export default MyForm;
当我运行我的应用程序时,我收到以下警告:
警告:MyForm 正在将文本类型的不受控制的输入更改为 受控。输入元素不应从不受控制切换到 控制(反之亦然)。决定使用受控或 组件生命周期内不受控制的输入元素
我相信我的输入是受控的,因为它具有价值。我想知道我做错了什么?
我正在使用 React 15.1.0
【问题讨论】:
标签: javascript node.js reactjs react-state