今天碰到一道面试题目,题目是关于React中useRef的使用,代码如下:
`const App = ()=>{
const [count, setCount] = useState(0);
const lastCount = useRef(count);
useEffect(()=>{
lastCount.current = count;
})
function handleAlertClick(){
setTimeout(()=>{
alert(lastCount.current)
},3000);
}
return
你点击了{count}次
}
ReactDOM.render(
,
document.getElementById('root')
);`
问题是:多次点击第一个按钮,中途点击一下第二个按钮,然后再点击第一个按钮,弹窗弹出的数字是什么样的,解释一下流程。