大佬教程收集整理的这篇文章主要介绍了angularjs – Angular UI路由器 – 父级中的访问状态参数,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我的设置看起来像:
.con@L_874_2@( function ($stateProvider,$urlRouterProvider) { $stateProvider // PROjeCT DETAIL .state('project',{ url: '/project/:projectId/',resolve: { /* some base api calls */ },views: { 'task-list': { templateUrl: 'partials/task_list.tmpl.html',controller: 'TaskListCtrl',resolve: { tasks: function ($stateParams,ConcernservicE) { return Concernservice.get('project-tasks/',$stateParams.projectId); },} },'concern-instance': { /* some resolved variables */ } } }) .state('project.task',{ url: 'task/:taskId/',views: { 'concern-instance@': { /* some different resolved variables */ },} })@H_675_4@这一切都像黄油一样工作.但是在我的task_list模板中,在状态project.task中,我想要能够访问taskId参数,@R_111_9447@突出显示活动的导航链接,即使url是#/ project / 123 / task / 456 / taskId是空的.我明白这是因为模板只能访问为该状态声明的参数.所以如果我想在project.task状态下获取taskId,该怎么办?我需要在porject.task中重新声明任务列表吗?
任何帮助非常感谢.
您只能使用父级的resolve属性访问子状态中的父状态参数.
把它放在你的’项目’状态(父):
... resolve: { // Expose projectId parameter to child states projectId: ['$stateParams',function ($stateParams) { return $stateParams.projectId; }] },@H_675_4@然后在您的控制器内为您的状态“project.task”(子),您应该可以访问这两个
$stateParams.projectId@H_675_4@和
$stateParams.taskId@H_675_4@
以上是大佬教程为你收集整理的angularjs – Angular UI路由器 – 父级中的访问状态参数全部内容,希望文章能够帮你解决angularjs – Angular UI路由器 – 父级中的访问状态参数所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。