使用条件语句来控制调用thunk action的频率。
例如,在redux-thunk中,可以使用一个标志来控制是否调用thunk action:
let canDispatch = true;
function myThunkAction() {
return function(dispatch) {
if (canDispatch) {
canDispatch = false;
// 此处执行逻辑
dispatch(anotherAction());
setTimeout(() => {
canDispatch = true;
}, 5000); // 5秒后重置标志
}
}
}
上述thunk action会在第一次被调用时执行,然后在5秒后允许再次执行。在5秒内多次调用myThunkAction将会被忽略,直到canDispatch被重置为true。这种方式可以有效地限制thunk action的调用频率,防止过于频繁的调用而导致性能问题。