一个页面中多个ng-app的角度加载栏

时间:2017-11-09 06:01:53

标签: html angularjs

我正在使用角度加载栏。但是,如果页面有多个ng-app,我无法找到使用它的方法。

http://chieffancypants.github.io/angular-loading-bar/

https://github.com/chieffancypants/angular-loading-bar

目前我只能将依赖项添加到像这样的单个应用程序

angular.module('myApp', ['angular-loading-bar'])

有没有办法让它适用于单个页面中的多个ng-app

1 个答案:

答案 0 :(得分:0)

简短回答 - 依赖注入 - 含义否。 DI的Angular非常强大,所以它不会让你在多个控制器上使用相同的模块,你必须为每个控制器使用不同的模块。

这也不是一个聪明的方法,因为您在许多控制器上使用相同的代码,使自己成为重复且不可维护的代码。

<强> Soultion:

如果您想使用相同的模块,请不要使用:

angular.module('myApp', ['angular-loading-bar'])

分别在所有控制器中, 选择一个包含您的主控制器:

angular.module('myApp', ['angular-loading-bar'])

在其他控制器中使用:

    var myApp = angular.module("myApp");
    myApp .controller

这样就可以避免依赖注入错误,因为您在几个控制器上使用相同的模块。

如果要为模块添加依赖项,请在主控制器中执行此操作:

 angular.module('myApp', ['angular-loading-bar', 'ng-sanitize'])

这将影响从您的模块派生的所有控制器。