为此,我看到了三种不同的模式,alt文档没有明确区分。如果我有行动,我该怎么打电话给调度?以下是我所见过的三种方式:
1. The action returns a function, which `dispatch` is passed into.
addPayment(args) {
return (dispatch) => {
dispatch();
// other action code
};
}
2. The action calls this.dispatch.
addPayment(args) {
this.dispatch();
// other action code
}
3. The action does not call dispatch.
addPayment(args) {
// other action code
}我不清楚这三个选项之间有什么区别,而且我特别不清楚选项3是否调用调度。
bindActions方法似乎将操作与操作处理程序关联起来,因此,在调用相关操作时,应该自动调用给定的操作处理程序,这将导致类似选项#3的代码。
丙氨酸转氨酶( alt ),so....yeah没有标记。标记它flux,因为这是最接近的匹配。
发布于 2019-09-05 16:09:23
好的,正如我所理解的,方法2是在alt的后期版本中修补的,现在会导致一个错误。
当您想在操作完成之前触发分派时,方法1可以正常工作。它通常用于在UI中启动加载状态的处理程序,因此您希望在操作完成时将其设置为加载。然后,您有单独的成功/失败操作(通常是通过alt的generateActions生成的)和它们自己的处理程序,这些处理程序负责操作完成后发生的事情。
方法3用于在操作完成后触发分派。下面是我错过的alt文档中的一个关键部分:
您还可以简单地从要调度的操作返回一个值。
因此,只要返回一个值,就会调用分派,因此您的操作首先完成。文档还加快了添加:
然而,这方面有两个例外:
因此,该bit提供了一种避免触发调度的方法。
https://stackoverflow.com/questions/57795215
复制相似问题