能否请您告诉我为什么状态未更新?在按钮上单击,我更新了状态,但是当我在setinterval上控制状态时,为什么没有更新?
这是我的代码
https://codesandbox.io/s/cool-shamir-8lmpo
<button
onClick={() => {
setState({
filters: {
apps: "DDDDDDH",
searchText: "12333",
taskType: "",
dateFrom: "",
dateTo: "",
status: ""
}
});
}}
>
useEffect(() => {
console.log("===============");
setInterval(() => {
console.log(state);
}, 10000);
}, []);
After button click searchText: "12333",
搜索文本应处于12333
状态,但显示为空?
为什么setinterval
中的state值不显示12333
答案 0 :(得分:0)
我想,这就是您想要的:
useEffect(() => {
const interval = setInterval(() => {
console.log(state);
}, 10000);
return () => clearInterval(interval);
}, [state]);