双向数据绑定后,select变化都会触发table表格重新渲染,如何避免这个问题?
见代码https://codesandbox.io/s/epic-colden-oi3eu
{/*代码1*/}
{/* {getFieldDecorator('gender', {
initialValue:"female",
rules: [{ required: true, message: 'Please select your gender!' }],
})(
<Select
placeholder="Select a option and change input text above"
onChange={this.handleSelectChange}
>
<Option value="male">male</Option>
<Option value="female">female</Option>
</Select>,
)} */}
{/*代码2*/}
<Select defaultValue="male">
<Option value="male" >male</Option>
<Option value="female">female</Option>
</Select>,
说明:代码1使用了双向数据绑定,当select变化时会自动渲染,控制台会输出两次“table表格被触发了”,如果使用代码2改变select时不会输出“table表格被触发了”。
问题:我现在需要再table里获取到gender的值,但不想表格被重新渲染!如果还是使用双向数据绑定该如何修改代码?如果不使用双向数据绑定该如何获取到gender的值,麻烦给出代码。
首先纠正的是, React没有双向绑定的概念, 这样只是受控表单.
再就是使用HOOK重写, 因为React类中比较复合类型数据很难.