ui-router传参

版权声明:本文可转载 ,但转载必须注明出处并附带本文链接 https://blog.csdn.net/qq_27868533/article/details/80097669

       angularJS的ui-router传参配置不好的话会发现传过去的参数只是一次性的,也就是刚跳到界面的时候可以捕获到这个参数,再次刷新的时候这个参数就获取不到了。

ui-router传参首先来看一下相关的三个属性:

       state:当前路由所处的状态,内含单个路由的所有配置属性

        url:当前路由对应的url正则路径

       params:传递的参数

       例如向一个路由分支为home的页面传递两个参数home_id和home_name:

.state('Home', {
   title: "界面模板管理",
   url: '/home?:home_id&:home_name', 
   params: {"home_id": null , 'home_name': null},
   templateUrl: 'home.html',
   controller: 'homeController',
   cache: false
})

       注:url的路径里一定要跟传的参数,否则传参为一次性传参,刷新界面将无法再获取上个页面传递的参数!

$state.go()传参

 $state.go("Home",{"home_id": "参数值", "home_name": "参数值"});

ui-serf传参

 <span ui-sref="Home({home_id: 参数值, home_name: 参数值})">跳转到Home页</span>

接收参数

       先在接受页面的controller中注入 $stateParams ,然后直接使用 $stateParams.home_id 就可以取到想要的 home_id的传值了。

猜你喜欢

转载自blog.csdn.net/qq_27868533/article/details/80097669