【发布时间】:2019-05-15 18:39:15
【问题描述】:
我的组件中有以下代码:
- 我通过使用
setPosition(-0.08)调用 setState 来开始反弹效果 - 然后我使用 ref 存储
setTimeout并在 350 毫秒后调用setPosition(0)。
function changeImage(dir) {
const isBouncing = useRef(false);
const bounceTimeout = useRef(null);
// ... some other code
if (dir === 'LEFT' && selected === 0) {
isBouncing.current = true;
setPosition(-0.08);
bounceTimeout.current = setTimeout(()=> {
isBouncing.current = false;
setPosition(0);
}, 350);
return;
}
}
它按预期工作!
问题
我有什么理由不应该这样做(从
setTimeout)?
【问题讨论】:
标签: javascript reactjs react-hooks