每当另一个字段发生更改时,我都会尝试使用最终表单计算器来清除一个字段。
在我的例子中,我有两个字段。只要第一个字段发生变化,第二个字段就会被清除。这是意料之中的事。
但是,当表单的父组件被重新呈现时会出现问题。每次父组件调用其渲染函数时,即使第一个字段没有更改,第二个字段也会被清除。单击顶部的forceUpdate
按钮可以观察到这一点。
有可能防止第二个字段像这样清除吗?优选不使用shouldComponentUpdate
我已经能够通过将decorators数组移到组件之外来解决它。
const decorators = [calculator]; // declared outside of App
并参考形式道具中的值
<Form
decorators={decorators}
...