想知道为什么要对Angular应用程序使用NGRX或NGXS而不是构造函数注入(inject)的服务来处理组件IO?
是否仅要确保组件属性引用在不切换整个属性值引用的情况下就不会发生突变,还是还有更多内容呢?
替代NGRX
根据我得出的答案:
Slice。
我相信它可以完成NgRx/NgXS的所有工作(时间机器除外-但这很容易通过增量通知来实现-已经受支持)。但样板为零。
这是一篇展示一些功能的文章:
https://medium.com/@ole.ersoy/storing-users-in-the-reactive-slice-object-store-5ea0fab06256
最佳答案
您将需要编写一个提供一致且易于更改的api来修改数据的服务,您将需要一种快速且经过良好测试的查询数据的方法,您将需要为所有数据编写并维护可观察的对象数据。您将必须编写并建立异步调用的模式。您将必须编写一个api来访问模板中的数据。
等到您完成时,您将得到类似于ngrx的内容。
对于简单的一项服务数据而言,ngrx会显得过大,太多样板,但是对于具有多个数据源或具有良好使用库的众多开发人员之间的复杂数据交互的响应式(Reactive)应用程序,这确实很有帮助。
按照SO答案进行更深入的解释:What are benefits of using store (ngrx) in angular 2
要了解何时使用哪种方法,请阅读以下内容:RxJs and Ngrx Store - When to Use a Store And Why?
关于javascript - 为什么使用NGRX代替构造函数注入(inject)服务?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49885341/