我想在简单的Input redux表单字段中进行简单的数据注入。 让我解释一下:
我有一个大表单,当用户在“LastName”输入中写入时,我只想将值作为“LastNameFather”注入第二个字段。
非常简单的imo,
我创建了一个formvalueSelector,并获得了第一个Input值。
const selecor = formValueSelector('MyForm')
const mapStateToProps = (state,props) => {
const name = selector(state,"nameOne")
return {
name : name
}}
我正在使用componentWillReceiveProps来处理写作并使用道具更改来注入我的价值。
componentWillReceiveProps = (props) => {
props.name != null ? props.change("name2",props.name) : null
}
现在,当我在第一个Field内写字时,会有无限的重新渲染。如您所见,我必须在更改第二个字段之前测试props.name!= null。
无论如何,我错过了什么?
由于
答案 0 :(得分:1)
先生。 GreGGus,根据React Js官方文档和#34;注意,即使道具没有改变,React也可以调用这个方法(componentWillReceiveProps),所以如果你只想处理更改,请确保比较当前值和下一个值。当父组件导致组件重新渲染时,可能会发生这种情况。 你可以尝试一下。