angular中$state.go页面跳转并传递参数

遇到一个页面跳转的时候,在跳转后的页面获取跳转前页面的数据,我想到用一种是localstorage,一种用broadcast和on,然后老大说不用这么麻烦,既然都$state.go了直接带参数,这次就介绍一下$state.go页面跳转传递参数。
1.路由页面(注意这里要在路由上添加一个参数用于传递数据,不然在页面跳转的时候会filter)
 .state("home.workpiece",{  // 跳转前的页面
      url:"/workpiece",
      views: {
        home: {
          templateUrl: prefix + "project/workpiece.html",
          controller: "workpieceCtrl"
        }
      }
    })
    .state("home.workpieceDetail",{   //跳转后的页面
      url:"/workpieceDetail?workpieceList",
      views: {
        home: {
          templateUrl: prefix + "project/workpiece_detail.html",
          controller: "workpieceDetailCtrl"
        }
      }
    })
    也可以将参数放在params中
    .state("home.workpieceDetail",{
      url:"/workpieceDetail",
      views: {
        home: {
          templateUrl: prefix + "project/workpiece_detail.html",
          controller: "workpieceDetailCtrl"
        }
      },
      params: {workpieceList:null}
    })
    
2.在workpieceCtrl中

angular.module("app").controller("workerpieceCtrl", ["$scope", "$state", function($scope, $state){

"use strict";

$state.go("home.workpieceDetail", {workpieceList : workpieceData});

}

]);    



3.workpieceDetailCtrl中

angular.module("app").controller("workerpieceCtrl", ["$scope", "$stateParams", function($scope, $stateParams){

"use strict";

$scope.workpieceList = JSON.parse($stateParams.workpieceList);

}

]);    



这样就可以将在页面跳转的时候传递数据了。


最后这个链接介绍了页面跳转传递参数的四种方式:http://www.cnblogs.com/Razor0/p/5200435.html
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值