我正在尝试在用户点击时更改计数器的值。
问题在于状态不是同步的,因此计数器无法正确更新并且延迟了一步。
这里是状态:
const [state, setState] = useState({ count: 2, read: true });
const { count, read } = state;
用户首先单击一个元素,调用一个重置函数:
const onReset = e => {
setState({ count: 0, read: false });
getArticles(article.slug, count, count + 2);
};
然后,用户可以点击load more
按钮,使计数器递增。
const loadMore = e => {
if (read) {
getArticles(article.slug, count, count + 2)
} else {
getTagArticles(article.slug, count, count + 2);
}
setState({ ...state, count: count + 2 });
};
如何使其异步,以使我的计数器更新值不晚?我应该使用全局变量而不是状态挂钩吗?
谢谢