AngularJs - 在其他模块可以导入模块之前必须完全配置模块吗?

时间:2014-06-03 15:22:47

标签: angularjs module

我正在开发一个大型应用程序,其中包含许多模块,具体取决于其他模块。我的问题是,在完全配置导入的模块之前,我可能会遇到模块导入另一个模块的情况。

例如:

// --------------------------------------
// create-directives-module.js

// Create 'guthub.directives' module
angular.module('guthub.directives', []);

// --------------------------------------
// create-main-module.js

// Import 'guthub.directives' module right away into module 'guthub'
angular.module('guthub', ['guthub.directives']);

// --------------------------------------
// create-focus-directive.js

// After 'guthub.directives' has been imported into 'guthub', 
// add a directive 'focus' to 'guthub.directives'
angular.module('guthub.directives').directive('focus',
    function() {
    return {
        link: function(scope, element, attrs) {
                    element[0].focus();
            }
};
});

'guthub'模块中是否可以使用'focus'指令,即使在'guthub.directives'被导入'guthub'之后它被配置为'guthub.directives'了?

1 个答案:

答案 0 :(得分:1)

在定义具有依赖关系的模块时,这些依赖关系不会在现场加载 - 您只是稍后将它们声明为注入。此外,Angular不会引导,直到它跟随dom ready事件后匹配文档中的ng-app属性。所以你的代码应该可以正常工作。

Demo