首先,你需要已經配置過你的rout,比如:
$stateProvider.state('firstPage',{url:'/Page/firstPage',templateUrl: 'Page/views/firstPage.html',controller: 'firstPageCtrl'//dependencies: ['service/vipSeachService']}).state('secPage', { params:{'message':null},url: '/Page/secPage',templateUrl: 'Page/views/secPage.html',controller: 'secPageCtrl'})
其中注意第二個地址信息中的params屬性,這個就是你要接受參數的對象,以key :value的形式定義
而在跳轉頁面時,兩個方法都可以傳參,一種是直接寫在html中
<a ui-sref="sec-page">跳轉第二頁</a>
此時傳參跟在頁面地址的后面
<a ui-sref="sec-page({message:messageId})">跳轉第二頁</a>
第二種就是寫在controller中
.controller('firstPageCtrl', function($scope, $state) { $state.go('secPage'); });
同樣參數寫在地址后面,以對象的形式
.controller('firstPageCtrl', function($scope, $state) { $state.go('secPage',{message:messageId}); });
傳過去的參數,需要在目標頁面的controller中用$stateParams接收,改方法需要提前注入
.controller('secPageCtrl', function($scope, $state,$stateParams) { var test=$stateParams.message;});
以上所述是小編給大家介紹的Angular 頁面跳轉時傳參問題,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!
新聞熱點
疑難解答