react antd useEffect 传 form 实例监听的是什么 ?

在 antd 中有一个 form 实例,

例如我对这个 form 实例使用


const [form] = Form.useForm()

useEffect(()=>{
// do some
},[form])

到底 form 上的什么变化时,才会执行 do some

阅读 2.5k
1 个回答

首先要知道 useEffect 第二个参数数组里如果是对象或数组时,进行的是一个浅比较,类似 Object.is 的作用。

如果form里的几个属性值都是基本类型的话,每次属性变化都会执行 do some。而如果 form.a = {...} a的变化,并不会执行 do some 逻辑。解决办法就是显式写清楚 [form.a]

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题