13
如何/在哪裏可以定期調度操作?使用遞歸setTimeout
進行倒計時。如何使用setTimeout和調度程序以redux觸發週期性操作
從例如採取類似的措施:
// Can also be async if you return a function
export function incrementAsync() {
return dispatch => {
(function _r() {
setTimeout(() => {
// Yay! Can invoke sync or async actions with `dispatch`
dispatch(increment());
_r();
}, 1000);
})();
};
}
所以這是一個好主意,或者有更好的辦法解決這個問題,喜歡用中間件或從其他地方創造的行動?
我更喜歡這種通用版本,我可以通過商店控制計時器的啓動/停止。
我設置一個樣本實現,請看看https://gist.github.com/eguneys/7023a114558b92fdd25e
因爲這確實有效,所以我可能不會重新創建一個總是看起來一樣的函數,而是定義一次。 –
你試過setInterval嗎?真的不明白你的增量是什麼異步。請記住,js事件處理不是很精確 – softwarenewbie7331