我试图推迟加载我的主控制器/模板(AppController),直到我从服务加载用户配置文件。
对于所有导航路线,我使用 $routeProvider 进行解析
.when('/edit/:editId', {
templateUrl: 'editTemplate.html',
controller: 'EditController' // this is a child controller of AppController
resolve: {
currentUser: ['svc.user', function(userSvc) { return userService.getUser(); }]
}
// and so on..
但对于 AppController 我正在使用
我该如何解析 AppController?本质上,我想要一个 userService.getUser() ,它返回一个在 AppController 实际运行之前完成执行的承诺,但我不确定如何使用 ng-init 来做到这一点(或者如果可能的话,我认为只有表达式不承诺可以兑现)。
感谢您的任何帮助/协助。
正如视频中所见:http://egghead.io/video/angularjs-resolve/ http://egghead.io/video/angularjs-resolve/
你应该试试:
.when('/edit/:editId', {
templateUrl: 'editTemplate.html',
controller: 'EditController' // this is a child controller of AppController
resolve: {
currentUser: ['svc.user', function(userSvc) { return userService.getUser(); }]
app: function ($q) {
var defer = $q.defer();
defer.resolve();
return defer.promise;
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)