反应-在组件寿命期间,“ useState”挂钩的设置器是否可以更改?

反应-在组件寿命期间,“ useState”挂钩的设置器是否可以更改?,第1张

反应-在组件寿命期间,“ useState”挂钩的设置器是否可以更改

设置器 功能在组件寿命期间不会更改

从Hooks常见问题解答:

(保证setCount函数的身份是稳定的,因此可以安全地省略。)

组件重新安装更改后

setState
返回的setter函数()
useState
,但无论哪种方式,
callback
都会获得一个新实例。

最好 在依赖项数组(

[setState]
)中添加状态设置器,尽管在大多数情况下不是必需的。

例如,当使用 自定义钩子时 ,像您这样

useDispatch
的人
react-redux
可能会在没有以下情况的情况下发生不良行为:

// Custom hookimport { useDispatch } from "react-redux";export const CounterComponent = ({ value }) => {  // Always new instance  const dispatch = useDispatch();  // Should be in a callback  const incrementCounter = useCallback(    () => dispatch({ type: "increment-counter" }),    [dispatch]  );  return (    <div>      <span>{value}</span>      // May render unnecessarily due to the changed reference      <MyIncrementButton onIncrement={dispatch} />      // In callback, all fine      <MyIncrementButton onIncrement={incrementCounter} />    </div>  );};


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5642350.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存