大佬教程收集整理的这篇文章主要介绍了在angularjs ui-router状态下解析多个对象?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
.state("dashboard.userRoles",{ url: "/user/:id/roles",controller: "userRolesController as vm",templateUrl: "app/auth/users/user-roles.html",resolve: { user: function (userresource,$stateParams) { return userresource.get({ id: $stateParams.id }).then(function (res) { return res.data; }); },roles: function($http,$stateParams) { var url = appSetTings.authApiBaseUrl + "api/accounts/users/" + $stateParams.id + "/roles"; return $http.get(url).then(function(res) { return res.data; }); },loadMyFiles: function($ocLazyLoad) { return $ocLazyLoad.load({ name: "app",files: [ "app/auth/users/userRolesController.js" ] }); } } })
如果我导航到dashboard.userRole并查看fiddler,我会看到获取用户资源的请求,但不是角色.如果我注释掉用户:部分,我会看到在fiddler中获取角色的请求.为什么我不能解决这两个问题?我应该将id发送到控制器并获取所有内容吗?
我试图避免在控制器中收集数据,因为它应该只是视图模型的东西和ui之间的缝合.也许那没关系?提前致谢.
编辑1:
好的,我可以将代码更改为此并查看fiddler中显示的两个请求,并且它们都返回格式正确的json数据:
.state("dashboard.userRoles",$stateParams) { return userresource.get({ id: $stateParams.id }).$promise; },$stateParams) { var url = appSetTings.authApiBaseUrl + "api/accounts/users/" + $stateParams.id + "/roles"; return $http.get(url).then(function(res) { return res.data; }).$promise; },files: [ "app/auth/users/userRolesController.js" ] }); } } })
但是,注入控制器的角色始终是“未定义的”.用户已正确填充. fiddler中的响应显示了回来的角色,所以我不确定为什么它们是未定义的.这是控制器代码.
"use Strict"; angular .module("app") .controller("userRolesController",[ "user","roles",function (user,roles) { console.log("app.userRolesController.function()"); var vm = this; vm.user = user; vm.roles = roles; } ]);
.state("dashboard.userRoles",$stateParams) { return userresource.get({ id: $stateParams.id }); },$stateParams) { var url = appSetTings.authApiBaseUrl + "api/accounts/users/" + $stateParams.id + "/roles"; return $http.get(url); },files: [ "app/auth/users/userRolesController.js" ] }); } } })
这是控制器.关于角色的.data很重要!
angular .module("app") .controller("userRolesController",roles) { var vm = this; vm.user = user; vm.roles = roles.data; } ]);
以上是大佬教程为你收集整理的在angularjs ui-router状态下解析多个对象?全部内容,希望文章能够帮你解决在angularjs ui-router状态下解析多个对象?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。