如何在应用程序中注入/加载Angular指令

时间:2014-08-18 10:20:28

标签: javascript angularjs

我的main.js位于应用的根文件夹中。

-app
 |_ routes.js
 |_ main.js
-components
 |_directives
   |_abc-directive.js

如何定义可从其他文件夹添加的指令。

我试过了:

abc-directive.js

var abcDirective = function() {
    // directive code
}

main.js

app.main = angular.module('main', ['ngRoute', 'components.directives']);
app.main.directive('abcDirective', "<I don't want to define a directive here, 
                                      rather load from diff. folder>");

2 个答案:

答案 0 :(得分:1)

您可以在自己的模块中定义控制器,指令,并将这些模块作为依赖项添加到主模块

<强> ABC-directive.js

var app = angular.module('directives.abcDirective', [])

app.directive('abcDirective', ...

<强> main.js

var app = angular.module('mainApp', ['directives.abcDirective'])

您可以使用RequireJS来管理依赖项。

答案 1 :(得分:0)

假定您在指令文件之前加载main.js,其中包含main模块声明。

您可以在指令文件中注册指令,如下所示:

angular.module('main').directive('abcDirective', abcDirective);

希望这有帮助。