【发布时间】:2019-06-30 22:01:42
【问题描述】:
假设我想创建经常需要的useInputState 钩子:
function useInputState(initialValue) {
const [value, setValue] = useState(initialValue);
const onChange = useCallback(
e => setValue(e.target.value),
[ /* ??? */ ]
);
return { value, onChange };
}
我是否需要将setValue setter 函数添加到回调的依赖项中?
我们可以指望二传手始终保持不变吗?
当我尝试时,这似乎有效,但这是一种好的做法吗?或者我们应该假设回调闭包中的任何内容都会改变并影响其实现?
(我能想到更多最终提出相同问题的例子)
【问题讨论】:
标签: javascript reactjs react-hooks