一般来说,我会执行以下操作,并且会有一个ng-app
在我的 HTML 中:
var myApp = angular.module("myApp", []);
myApp.controller("AttributeCtrl", function ($scope) {
$scope.master = {
name: "some name"
};
});
但是,我需要手动引导 Angular,因为我只在通过 jQuery 加载的应用程序的一部分中使用它$.load()
。如果我执行以下操作:
main.js - 这是我想要使用 Angular 的页面被拉入的地方
$("#form").load(contextPath + url, params, function() {
angular.bootstrap($("#angularApp"));
});
然后被拉入的页面有它自己的 javascript:
function AttributeCtrl($scope) {
$scope.master = { name: "some name"};
}
然而,理想情况下,这是可行的,我希望我的控制器的范围在模块级别。所以我像这样修改了上面的代码
main.js
$("#form").load(contextPath + url, params, function() {
angular.bootstrap($("#angularApp", ["myApp"]));
});
进而...
var app = angular.module("myApp"); // retrieve a module
app.controller("AttributeCtrl", function($scope) {
$scope.master = { name: "some name"};
});
不过,以这种方式检索模块似乎不起作用。难道我做错了什么?