AngularJS路由 $state服務、路由事件、獲取路由參數


1 ui-sref、$state.go 的區別

ui-sref 一般使用在 <a>...</a>;

<a ui-sref="message-list">消息中心</a>

$state.go('someState')一般使用在 controller里面;

.controller('firstCtrl', function($scope, $state) { $state.go('login'); });

這兩個本質上是一樣的東西,我們看ui-sref的源碼:

復制代碼
...
element.bind("click", function(e) { var button = e.which || e.button; if ( !(button > 1 || e.ctrlKey || e.metaKey || e.shiftKey || element.attr('target')) ) { var transition = $timeout(function() { // HERE we call $state.go inside of ui-sref  $state.go(ref.state, params, options); });
復制代碼

ui-sref最后調用的還是$state.go()方法

 

2 如何傳遞參數

 

首先,要在目標頁面定義接受的參數:

 

傳參,

ui-sref:

$state.go:

 

接收參數,

在目標頁面的controller里注入$stateParams,然后 "$stateParams.參數名" 獲取


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM