我一直在浏览Angular教程,并在浏览HTTP部分https://angular.io/docs/ts/latest/tutorial/toh-pt6.html时注意到在NgModule中声明导入的顺序在应用程序是否有效方面有所不同.我想知道为什么会这样.
特别是这有效:
@NgModule({ imports: [ BrowserModule, FormsModule, HttpModule, InMemoryWebApiModule.forRoot(InMemoryDataService), AppRoutingModule ], ... })
但以下没有.英雄列表没有加载.请注意,HttpModule是在InMemoryWebApiModule之后声明的:
@NgModule({ imports: [ BrowserModule, FormsModule, InMemoryWebApiModule.forRoot(InMemoryDataService), HttpModule, AppRoutingModule ], ... })
本教程使用的是Angular 2.4.4.我注意到了Firefox和IE中的问题.我没有在谷歌搜索中发现任何可能表明问题根源的内容.
Gün*_*uer 13
提供者的顺序很重要,对于导出的组件,指令或管道并不重要,因为冲突会导致错误.
的InMemoryWebApiModule.forRoot(InMemoryDataService),
覆盖Http
,如果HttpModule
在稍后提供,这是压倒一切作废.稍后添加的提供商使用相同的密钥覆盖已注册的提供商.
归档时间: |
|
查看次数: |
4119 次 |
最近记录: |