0

我将 Angular 与 RequireJS 结合使用。我已经定义了非常简洁的控制器来封装特定于这些模块的逻辑。我遇到的一个缺点是我必须在最顶层包含所有角度模块,它将单独的模块耦合到主层。

// app.js
define(['angular', 'angularui'], function (angular) {
     return angular.module('phx', ['ui.bootstrap'])
});

ui.bootstrap有没有一种方法可以在该模块需要时注入?例如,主页只是登录,然后内部页面需要 angularui,依此类推:

//dashboard.js
define(['app', 'angularui', function (app) {

     // inject ui.bootstrap here? so not to couple to main module
     return app.controller('ctrl', 
          ['$scope', function ctrl($scope) {
     }];
});
4

1 回答 1

0

鉴于上面的例子,我可以添加:

// app.js
define(['angular'], function (angular) {
     return angular.module('phx', [])
});

//dashboard.js
define(['app', 'angularui'], function (app) {
    app.requires.push('angularui');
});

繁荣!

于 2013-11-15T16:27:06.267 回答