AngularJS:配置块的执行顺序

时间:2016-03-17 16:08:34

标签: angularjs ngroute angularjs-config

如果角度模块有多个配置块,它们将按什么顺序执行?

在我的angularjs应用程序中,我使用$ routeProvider配置配置块中的路由。是否可以在另一个配置块中覆盖/扩展此路由配置?

在我的项目中,我需要启用自定义(例如覆盖路由配置),而不涉及修改基本代码。

的script.js

var myApp = angular.module("myApp", ['ngRoute']);
myApp.config(['$routeProvider', function ($routeProvider) {
    $routeProvider.
        when('/path1', {
            template: 'path1'
        }
    );
}]);

script-ext.js (覆盖路由配置)

var myApp = angular.module("myApp");
myApp.config(['$routeProvider', function ($routeProvider) {
    $routeProvider.
        when('/path1', {
            template: 'path1-ext'
        }
    );
}]);

在测试这段代码时,我发现 script.js 中的配置块先执行,然后执行 script-ext.js 中的配置块。因此,我能够成功覆盖路由配置,而无需更改script.js(基本代码)。

但是,我试图了解angular如何确定应该运行配置块的顺序。能帮帮我吧......

1 个答案:

答案 0 :(得分:-2)

如果它们位于不同的js文件中,则它们将按照它们包含在index.html(或登录页面)中的顺序执行。