当我阅读有关 ngrx 的信息时,我看到了包含商店的不同方式:
我看到的一种方法是包含在导入中:
@NgModule({
imports: [
... omitted
StoreModule.provideStore(AppReducer),
],
declarations: [
AppComponent
],
bootstrap: [AppComponent]
})
export class AppModule {
}
我见过的另一种方法是将它包含在引导程序中:
import {bootstrap} from 'angular2/platform/browser';
import {App} from './src/app';
import {provideStore} from '@ngrx/store';
import {ItemsService, items, selectedItem} from './src/items';
bootstrap(App, [
ItemsService, // The actions that consume our store
provideStore({items, selectedItem}) // The store that defines our app state
])
.catch(err => console.error(err));
哪个是正确的和/或公认的最佳实践?为什么?
我查看了一个没有 rxjs 存储的项目中的随机 app.module.ts 文件,我想知道它应该在这样的文件中正确放置在哪里:
https://github.com/AngularClass/angular2-webpack-starter/blob/master/src/app/app.module.ts
可选地感谢任何关于如何组织“当前”2017 年 5 月 angular2/4 应用程序以与 RxJS 集成的任何参考。