Javascript AngularJS在接收数据后手动引导
我试图在从服务器接收数据后手动引导AngularJS bootstrap.js:Javascript AngularJS在接收数据后手动引导,javascript,angularjs,Javascript,Angularjs,我试图在从服务器接收数据后手动引导AngularJS bootstrap.js: var initInjector = angular.injector(['ng']); var $http = initInjector.get('$http'); var maindata; function bootstrapAngular() { angular.element(document).ready(function() { angular.bootstrap(docum
var initInjector = angular.injector(['ng']);
var $http = initInjector.get('$http');
var maindata;
function bootstrapAngular() {
angular.element(document).ready(function() {
angular.bootstrap(document, ['app']);
});
}
function getMainData() {
return maindata;
}
$http
.get('/data')
.then(function (response) {
maindata = response.data;
bootstrapAngular();
}, function (error) {
console.log(error);
});
启动应用程序后,我需要在应用程序中使用maindata
或getMaindata()
。因此,我不能让javascript更接近(function(){})()在bootstrap.js
文件上进行code>以保持所有内容的私密性,以便应用程序的其他部分可以访问函数和变量
是否可以将所有内容都设置为私有,但仍可供应用程序的其他部分访问?您可以将maindata
公开为可注入数据,以使其在应用程序中可用:
$http
.get('/data')
.then(function (response) {
maindata = response.data;
angular.module("app").value("MainData", maindata);
bootstrapAngular();
}, function (error) {
console.log(error);
});
然后您可以将其注入控制器或服务:
.controller("MainCtrl", function($scope, MainData){
$scope.data = MainData;
});
所以问题是,你想要执行一段特定的代码,它将从服务器获取一些数据,并在你的应用程序中使用这些值,在其他任何事情发生之前???@TechMa9iac是的,这就是我试图做的。我想新开发人员的答案解决了我的问题。或者,你有更好的建议怎么写?没有。我猜@NewDev的响应符合要求(y)