Angularjs 初始化应用程序正在等待REST调用数据结果
已经创建了一些具有角度的、仍在学习和发现的基本web应用程序 我需要创建一个角度应用程序,它取决于应用程序中使用的各种参数。例如,我们将通过REST检索的各种标签字符串。。。这些标签用于应用程序的每个屏幕,包括启动时显示的第一个屏幕 我正在寻找一种“适当的”/“良好的”/“角度的”方法来初始化应用程序,等待一种“初始化应用程序”rest调用的结果-由于这个rest调用的结果包含应用程序从一开始就需要的数据,我在下面找到了一个示例方法 是否还有其他想法/想法/有用的链接。。。Angularjs 初始化应用程序正在等待REST调用数据结果,angularjs,Angularjs,已经创建了一些具有角度的、仍在学习和发现的基本web应用程序 我需要创建一个角度应用程序,它取决于应用程序中使用的各种参数。例如,我们将通过REST检索的各种标签字符串。。。这些标签用于应用程序的每个屏幕,包括启动时显示的第一个屏幕 我正在寻找一种“适当的”/“良好的”/“角度的”方法来初始化应用程序,等待一种“初始化应用程序”rest调用的结果-由于这个rest调用的结果包含应用程序从一开始就需要的数据,我在下面找到了一个示例方法 是否还有其他想法/想法/有用的链接。。。 谢谢 我建议您探索
谢谢 我建议您探索ngRoute(如果您使用的是ngRoute)或UI路由器状态的
'resolve'
属性:-
使用时:-
或者,如果您正在使用:-
在这两种方法中,只需确保在HTML模板中不提供“ng控制器”。正如上面的例子所示,在定义路线状态时提供控制器
正在“解析”的属性-如果它们是承诺,则在承诺解析之前控制器(因此视图)不会初始化
我强烈建议您探索州层次结构方法,允许您共享“已解决”;子状态的属性。如果应用程序中有ui路由器,则使用其
解析
功能是最好的选择:
$routeProvider
.when("/news", {
templateUrl: "newsView.html",
controller: "newsController",
resolve: {
message: function(messageService){
return messageService.getMessage();
}
}
})
$stateProvider.state('root',{
abstract:true, // this is abstract statte, controller is in child states.
templateUrl:'/assets/root-module/partial/main/main.html',
resolve : {
securityContext : function($http){
return $http.get("/security/context");
},
token : function(securityService,securityContext){
securityService.setToken(securityContext.data.token);
console.debug(securityContext.data.token);
return securityContext.data.token;
}
}
});