angularjs – angular UI路由器| $stateParams不工作
发布时间:2020-12-17 08:32:00 所属栏目:安全 来源:网络整理
导读:似乎$ stateParams不工作。 通过日期如下: $state.go('state2',{ someParam : 'broken magic' }); 在目标状态上忽略的参数 console.log('state2 params:',$stateParams); // return empty object {} 码: var app = angular.module('app',[ 'ui.router' ]);
似乎$ stateParams不工作。
通过日期如下: $state.go('state2',{ someParam : 'broken magic' }); 在目标状态上忽略的参数 console.log('state2 params:',$stateParams); // return empty object {} 码: var app = angular.module('app',[ 'ui.router' ]); app.config(function($stateProvider) { $stateProvider .state('state1',{ url: '',templateUrl: 'state-1.html',controller : function ($scope,$state,$stateParams) { $scope.go = function () { $state.go('state2',{ someParam : 'broken magic' }); }; console.log('state1 params:',$stateParams); } }) .state('state2',{ url: 'state2',templateUrl: 'state-2.html',$stateParams) { $scope.go = function () { $state.go('state1',{ someOtherParam : 'lazy lizard' }); }; console.log('state2 params:',$stateParams); } }); }); 实例可以在这里找到: 谢谢。
你不能在状态之间传递任意参数,你需要将它们定义为$ stateProvider定义的一部分。例如。
$stateProvider .state('contacts.detail',{ url: "/contacts/:contactId",templateUrl: 'contacts.detail.html',controller: function ($stateParams) { console.log($stateParams); } }) ... 上面将输出一个定义了contactId属性的对象。如果你去/ contacts / 42,你的$ stateParams将是{contactId:42}。 有关详细信息,请参阅documentation for UI-Router URL Routing。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |