我明白为什么 useCallback
是好的。如果 deps 没有改变,它不会创建新函数。
对于 state
函数也是如此吗?
例如:
// parent component
const [val, setVal] = useState<boolean>(false);
<childComponent
:setVal={setVal}
/>
现在,如果父组件因为 val
字段以外的其他原因重新渲染,setVal
函数将再次创建,这将导致 childComponent
无明显原因再次重新渲染.这是真的 ?如果是这样,我想,有没有办法解决这个问题?
答案 0 :(得分:1)
不,可以通过 setVal
。 useState
负责在每个渲染周期返回相同的 setVal
实例。