方法一:url 传值
i. html中 <a href="#/main/page1/{{item.id}}" ii. app.js中 //薪资详情 .state('salaryDetail', { url: '/main/page1/:id', templateUrl: 'templates/salaryDetail.html', controller: 'SalaryDetailCtrl', }) iii. 在controller中使用$stateParams中获取参数 console.log($stateParams.id)方法二:使用$state进行页面切换
i. 使用$state.go()时,带上参数 $state.go('state1', { id: '22', obj: { key: 'value' } }); ii. 在controller中使用$stateParams中获取参数 console.log($stateParams.id); console.log($stateParams.obj);另外:页面多个值传递的方法 A
i. html中,依次写上 <a href="#/main/page1/{{item.id}}/{{item.type}}" ii. app.js中 //薪资详情 .state('salaryDetail', { url: '/main/page1/:id/:type', templateUrl: 'templates/salaryDetail.html', controller: 'SalaryDetailCtrl', }) iii. 在controller中使用$stateParams中获取参数 console.log($stateParams.id) console.log($stateParams.type)B .也可以将多个值放入数组,一次性传递然后再解析数组
i. html中,依次写上 <a href="#/main/page1/{{array}}" ii. app.js中 //薪资详情 .state('salaryDetail', { url: '/main/page1/:array', templateUrl: 'templates/salaryDetail.html', controller: 'SalaryDetailCtrl', }) iii. 在controller中使用$stateParams中获取参数,再进行解析 console.log($stateParams.array)当然,还有其它方法例如全局变量、存入sessionStorage、localStorage等等。不是很常用,很简单,直接存入进去,需要的时候拿出来就行。