小编Ami*_*mit的帖子

useState 的 setter 是否保证相同?

假设我想创建经常需要的useInputState钩子:

function useInputState(initialValue) {
  const [value, setValue] = useState(initialValue);
  const onChange = useCallback(
    e => setValue(e.target.value), 
    [ /* ??? */ ]
  );
  return { value, onChange };
}
Run Code Online (Sandbox Code Playgroud)

我需要将setValuesetter 函数添加到回调的依赖项中吗?我们可以指望二传手始终保持不变吗?当我尝试时,这似乎有效,但这是好的做法吗?或者我们应该假设回调闭包中的任何内容都可以更改并影响其实现?

(我可以想到更多最终提出同样问题的例子)

javascript reactjs react-hooks

5
推荐指数
1
解决办法
603
查看次数

标签 统计

javascript ×1

react-hooks ×1

reactjs ×1