ngrx/store:调度方法是否通过所有化简器传递操作



我刚刚在Angular-2-Project中开始使用ngrx/store。我的问题涉及通过商店的调度方法分配操作:操作会通过所有减速器传递吗?这意味着操作类型必须是全局唯一的?这是对的吗?

我问这个问题是因为在某些教程中,操作的类型是相当短的字符串,就好像它们在某种程度上受到局部限制一样。但如果它们是全球性的,人们应该有某种prefix_namespacing,对吧?

谢谢!

是的,操作类型必须是唯一的是正确的。

如果检查 ngrx 示例,它将使用操作创建者模式,该模式在操作前面加上操作类型的名称。

https://github.com/ngrx/example-app/blob/master/src/app/actions/book.ts

是的,商店将所有减速器组合为一个,因此将有效地将操作分配给所有减速器。如果许多化简器具有匹配操作,它们都将执行该操作的代码。

使操作唯一的一种方法是通过类而不是直接字符串常量公开它们,这里有一个例子:

https://github.com/ngrx/example-app/blob/master/src/app/reducers/books.ts

您可以查看如何在应用/操作中定义操作

最新更新