在 antd 中有一个 form 实例,
例如我对这个 form 实例使用
const [form] = Form.useForm()
useEffect(()=>{
// do some
},[form])
到底 form 上的什么变化时,才会执行 do some
在 antd 中有一个 form 实例,
例如我对这个 form 实例使用
const [form] = Form.useForm()
useEffect(()=>{
// do some
},[form])
到底 form 上的什么变化时,才会执行 do some
2 回答2.7k 阅读✓ 已解决
1 回答1.7k 阅读✓ 已解决
4 回答1.6k 阅读✓ 已解决
2 回答2.5k 阅读✓ 已解决
1 回答2.6k 阅读✓ 已解决
2 回答1.5k 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
首先要知道 useEffect 第二个参数数组里如果是对象或数组时,进行的是一个浅比较,类似
Object.is
的作用。如果form里的几个属性值都是基本类型的话,每次属性变化都会执行
do some
。而如果form.a = {...}
a的变化,并不会执行do some
逻辑。解决办法就是显式写清楚[form.a]
。