我刚学习本地反应三周,我很难根据父母的状态更新自定义控制器值。
这是小提琴:js fiddle to react native
在代码中,当我从自定义控件输入中键入时,父输入已更新。但是当我从父输入中键入时,自定义控件输入不会更新。
你能指出我的错误吗?
这是我的代码:
@IBOutlet weak var labelcity: UILabel!
谢谢:)
答案 0 :(得分:1)
您正在子组件中存储您不应该存在的状态,父组件会传递一个处理器onChangeTextValue,您应该使用它。
尝试替代您的子组件
var CustomControl = React.createClass({
propTypes: {
onChangeTextValue: React.PropTypes.func,
value: React.PropTypes.string.isRequired
},
render: function(){
return (
<TextInput
style={{ height: 40, borderColor: 'gray',
borderWidth: 1 }}
onChangeText={this.props.onChangeTextValue}
value={this.props.value}
/>
)
}
});