第二次发动时相同的动作不会调用传奇,而在第一局中正确

时间:2020-04-24 21:57:29

标签: reactjs typescript react-redux react-hooks redux-saga

在第一次加载后在某个动作上调用传奇时,它正常工作。 但是,当对传奇执行两次相同的动作时,会分派动作,但传奇永远不会收到。

useEffect(() => {
		if (show) {
			updateTitle(message.title);
			if (!status || status === Status.Initiate) {
				createStatus();
			}
		}
		return () => {
			if (!show) {
				cleanup();
			}
		};

	}, [status]);

1 个答案:

答案 0 :(得分:0)

以下过程解决了我的问题。

事实证明,在运行时如果某个传奇无法执行,则不再调用该传奇,这意味着如果为该传奇生成了任何动作,则将其忽略。

要检查传奇故事在运行时是否失败,可以将传奇故事的主体包装在try catch块中。

function* failingSaga() {
  try {
  
    // saga-body
  } catch(e) {
    console.log(e);
  }
}

这将有助于了解异常是什么。