我们正在准备升级我们的 AngularJS 应用程序并为此进行重构。目前我们遇到了一个架构问题:
我们的应用程序当前通过 jQuery AJAX 调用加载 JSON,这会设置所有数据,然后引导应用程序。
但是,我们需要将 AJAX 调用移至 Angular,以便我们可以引导应用程序而无需等待 AJAX 返回(这是升级所必需的)
$.get('/ajax/init').done(function (initData) {
walletApp.run([
'SomeService', function (someService) {
// ...
},
]);
walletApp.config([
'SomeProvider', function (someProvider) {
// ...
},
]);
walletApp
.factory('navInfo', function () {
return initData.navInfo;
})
.factory('userInfo', function () {
return initData.userInfo;
});
// ETC
// Below is the important line
angular.bootstrap(document, ['walletApp']);
});
我一直在尝试以下内容,initService
获取 JSON 提要,然后分配所有数据
angular.module('walletApp')
.run([
'InitService', function (initService) {
initService.get();
},
]);
angular.bootstrap(document, ['walletApp']);
但这会导致一系列问题。
我们如何正确加载需要来自 AJAX 的数据才能运行的 AngularJS 应用程序?