2

我需要在 HTML 代码中将一些变量从后端传递到 Angular 前端。理想情况下,我喜欢将它放在$rootScope. 但是,$rootScope在页面加载时尚未定义。我能做到的唯一方法是:

var myVar = ["aa", "bb"];

然后从$window.myVar

那么有没有办法等到$rootScope由Angular定义然后在HTML中解析值呢?

4

2 回答 2

0

是的,试试这样的

var myApp = angular.module('App', []);

myApp.run(function($rootScope) {
   $rootScope.myVar = ['aa', 'bb'];
});

// we launch Angular manually when DOM is ready
angular.element(document).ready(function() {
   angular.bootstrap(document, ['App']);
});
于 2014-03-04T09:11:52.947 回答
0

定义一个常量并在需要的地方注入它怎么样?

angular.module('yourModule').constant('yourVar', ['aa', 'bb']);

然后你可以在运行阶段使用它:

angular.module('yourModule').run(function($rootScope, yourVar) {
    $rootScope.yourVar = yourVar;
});
于 2014-03-04T09:13:07.110 回答