useEffect(() => {
// 这里面依赖了 a、b、c,希望使用它们最新的值
// 但希望只由 a 触发
}, [a])
// 怎么写比较好呢
useEffect(() => {
// 这里面依赖了 a、b、c,希望使用它们最新的值
// 但希望只由 a 触发
}, [a])
// 怎么写比较好呢
const [a] = useState(0);
const [b] = useState(1);
const handler = () => console.log(`a${a}, b${b}`);
const ref = useRef();
useEffect(() => {
ref.current = handler;
});
useEffect(() => {
ref.current();
}, [a]);
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
很简单,写一个
usePrevious
hook 就可以解决了,我放了一个在线运行的示例。https://codesandbox.io/s/stag...