在 AngularJS 应用程序中有条件地注入模块
Inject modules conditionally in AngularJS app
我的 Angular 应用程序结构是这样的:
应用.js
angular.module('RateRequestApp', [
'RateRequestApp.services',
'RateRequestApp.controllers',
'ui.bootstrap',
'angular-loading-bar',
'textAngular',
'angularFileUpload'
]);
我为不同的页面使用不同的 HTML 文件,但我没有使用Angular 的$route
,但我仍然想在具有不同控制器的所有页面中使用相同的应用程序。
如您所见,我正在向我的应用程序注入第三方模块。问题是在某些页面中我不想要其中一些模块,如何在不需要它们的地方避免它们?
是的,你可以这样做:
var myApp = angular.module('RateRequestApp', [
'RateRequestApp.services',
'RateRequestApp.controllers',
'ui.bootstrap',
'angular-loading-bar'
]);
var lazyModules = ['textAngular', 'angularFileUpload'];
angular.forEach(lazyModules, function(dependency) {
myApp.requires.push(dependency);
});
在这种情况下,您可以有条件地注入模块。(但请注意,在需要某些配置的情况下,某些模块的延迟加载可能无法正常工作。
相关文章:
- 我可以像其他库一样将JointJS作为AngularJS模块注入吗
- 将模块注入控制器AngularJs
- AngularJS在不使用变量的情况下将服务注入模块中,这样就可以缩小它
- JavaScript模块化和依赖注入之间的区别
- JavaFX+Javascript:如何将Java对象注入AMD模块
- $injector:modulerr将自定义模块注入Angular应用程序
- angularjs自定义模块与$http注入
- 如何在angularjs中为每个控制器注入一个独特的模块
- AngularJS - 将提供程序注入模块.config
- AngularJS在应用程序初始化后注入模块
- 在 AngularJS 应用程序中有条件地注入模块
- DevExtreme-错误注入模块
- AngularJS上不断出现注入模块错误
- 只有在需要AngularJS时才注入模块依赖项(如插件)
- AngularJs/ngCordova自定义构建离子注入模块错误
- 如何区分AngularJS中注入模块的名称空间
- 如何在AngularJs中注入模块的两个不同实例
- 如何在AngularJS中正确注入模块
- AngularJS动态注入模块
- 在Angular运行时注入模块