angularjs $state.go页面跳转传递参数

IT_huge 2016-09-09 04:44:19
用$state.go实现页面跳转并传递参数,在目标页面得不到传递的参数。请大神们指点,谢谢。

app.controller('usageLogCtrl', function($scope,$state, $http,$ionicLoading,$ionicModal,dateService,$cordovaDatePicker,appCommon,ionicDatePicker) {
$scope.openCustomerModal1 = function(x) {
$state.go('usageLogDetail',{test:1});
};

目标页面controller:
app.controller('detailCtrl', function($scope,$stateParams, $http,$ionicLoading,$ionicModal,dateService,$cordovaDatePicker,appCommon,ionicDatePicker) {
$scope.x=$stateParams.test;
});
...全文
19748 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
javaweiming 2016-12-30
  • 打赏
  • 举报
回复
你需要在路由里面配置你要接收的参数: params: {'test': null}, 例如: $stateProvider .state('login', { url: "/login.html", templateUrl: "xxx/login.html", data: {pageTitle: '登陆'}, params: {'test': null}, controller: "xxxController", })
JessicalLxc 2016-10-18
  • 打赏
  • 举报
回复
楼上正解 ,路由里要设置test:null 参数
qq_33668657 2016-10-12
  • 打赏
  • 举报
回复
我解决了,你看你跳转的URL那里,$state.go 这个里面的URL如果是通过常量定义,定义的时候没有用到$stateProvider服务的话,那么你要自己在你定义的目标URL下面加上参数定义,不然$state.go在传输之后在目标controller接受的时候会被filter过滤掉 .constant("routes", { "root.aa" : { url : "/aa", views : { 'mainContent' : { abstract: true, templateUrl : "aa/ss/html/aa.html", controller : "aa_controller" } }, params : {//跳转设置参数 source:'' } } } 像这样
qq_33668657 2016-10-12
  • 打赏
  • 举报
回复
哥!解决了么?我也遇到了这个问题,我可以肯定我代码应该没写错。

87,922

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧