我有一个角度应用程序,需要从一些JSON加载应用程序配置数据,这包含在一个服务中,该服务被注入到控制器中。问题是我需要控制器等到json成功加载。换句话说,同步加载它。我想提出这个json文件的请求,并让应用程序 nothing ,直到我们找回它为止。我不知道"正确的角度"这样做的方法是,建议?
答案 0 :(得分:3)
使用angular.bootstrap()
初始化应用。
var myApp = angular.module('myApp', []);
//declare the rest of myApp, e.g. myApp.controller(...
angular.element(document).ready(function() {
jQuery.getJSON('/api/my-app/config', function(data) {
//do whatever you wish with `data`
angular.bootstrap(document.getElementById('my-app'), ['myApp']);
});
});
注:
jQuery.getJSON()
angular.element(document).ready()
中的两个嵌套回调和AJAX调用,
考虑使用承诺,以便它们可以同时发生