在第一次加载后在某个动作上调用传奇时,它正常工作。 但是,当对传奇执行两次相同的动作时,会分派动作,但传奇永远不会收到。
useEffect(() => {
if (show) {
updateTitle(message.title);
if (!status || status === Status.Initiate) {
createStatus();
}
}
return () => {
if (!show) {
cleanup();
}
};
}, [status]);
答案 0 :(得分:0)
以下过程解决了我的问题。
事实证明,在运行时如果某个传奇无法执行,则不再调用该传奇,这意味着如果为该传奇生成了任何动作,则将其忽略。
要检查传奇故事在运行时是否失败,可以将传奇故事的主体包装在try catch块中。
function* failingSaga() {
try {
// saga-body
} catch(e) {
console.log(e);
}
}
这将有助于了解异常是什么。