我正在尝试在应用程序中通过API调用添加@ ngrx / store。
但是我实际上没有找到进行api调用的最佳位置,以及进行调度调用的最佳位置。
例如,我有一个减速器“ AllBooks”
我的组件图书
从我的图书服务
获取数据Book服务进行 api调用并获取数据。
API调用
在一些教程中,我看到api调用在reducer中 在其他服务中,api调用在服务中。
调度电话
在某些教程中,我看到调度调用是从组件进行的。 在其他情况下,api分发位于服务中。
我正在寻找一个针对angular 6的新的简单演示代码,该代码使用@ ngrx / store和api调用来学习组织代码的最佳实践是什么
这是我当前的组件代码(构造函数):
this._passwordService.getPasswordsById(id).subscribe(
(data) => {
this.password = data;
this._store.dispatch(new PasswordActions.GetPassword(this.password));
this.onInit();
},
(error: any) => { console.log(error) })
答案 0 :(得分:2)
您应该在效果中调用该服务。效果来自@ngrx/effects
包,该包是处理副作用的地方。有关更多信息,请参见docs。
您可以在NgRx example app中找到示例。