我有一种情况,将 promise 对象作为状态的一部分会非常方便。简而言之 - 有一个状态包含用户在问答模式下提供的所有信息,在回答一些问题之后,发送一个电话会很好,在再问几个问题后将需要结果:
Q1 -> Q2 -> Q3 - -> Q4 - - -> Q5 -> Q6 -> Q7
\ - - Call to API - - /
在 Q7 之前,我需要检查 Q3 之后的通话结果。将承诺作为状态的一部分,然后订阅结果真的很容易。但我内心有一种感觉,它不应该发生。这样做可以吗?
我认为我的代码不会有助于理解,所以如果不清楚,请随时提出问题。
你不应该这样做,因为序列化你的状态将不再可能。不确定的问题有多少,它可能只会破坏您正在使用或将使用的开发工具或某些持久性/水化库。但是要忠于 redux 及其简单性,请将您的场景简化为一个事实:
基于此,您发送请求:
if (currentQuestion > 3 && currentQuestion < 7 && !isDataRequested) {
dispatch(callToApi()); // this sets isDataRequested to true.
}
这将有助于保持和滋润状态。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句