forRoot 在 Angular 库中不起作用,但在 appmodule 中它按预期工作



当我在appmodule中导入模块并调用root时,一切都在工作,没有注入问题。 但是当我从 appmodule 中删除并添加一个调用 Root 的延迟加载模块时,无法按预期工作。 获取NullInjectorError:没有 InjectionToken forRoot(( 的提供程序,是否必须将所有模块导入到 appmodule 中。我的主要动力是减少主.js捆绑包的大小,所以不想在appmodule中加载所有模块

Appmodule => featureModule.forRoot(env( => 工作正常

LazyloadedModule => fetaureModule.forRoot(env( => Null Injector error

使用 RouterModule 的 forChild 方法而不是 forRoot 包含路由

参考 : https://angular.io/guide/lazy-loading-ngmodules

使用fetaureModule.forChild(env)而不是fetaureModule.forRoot(env)

对于所有延迟加载的模块,我们应该使用forChild().

最新更新