Angular ui-route路由狀態(tài)監(jiān)聽(tīng)

使用ui-route很多的時(shí)候需要控制頁(yè)面跳轉(zhuǎn)。

而監(jiān)聽(tīng)路由狀態(tài)的變化是最開(kāi)始的切入點(diǎn),我們可以再注入$location服務(wù)進(jìn)行跳轉(zhuǎn)邏輯管理。

在ui-route的api-doc中,便給我們介紹了幾個(gè)event,這樣可以使得我們很簡(jiǎn)單就能知道路由變化的狀態(tài)。

以下我就記錄一下ui-route0.x版本的監(jiān)聽(tīng)方法

var app=angular.module(“app”,[“ui-route”])

//先配置一些跳轉(zhuǎn)頁(yè)面

app.config(“$stateProvider”,”$urlStateProvider”,function($stateProvider,$urlStateProvider){

? ? $stateProvider.state(“l(fā)ogin”,{

? ? ? ? url:”/login”

? ? ? ? templateUrl:”login.html”

? ? })

})

//我們開(kāi)始初始化全局監(jiān)聽(tīng)事件

app.run(“$rootScope”,[function($rootScope){

? ? //訂閱一個(gè)監(jiān)聽(tīng)事件

? ? $rootScope.$on(“$stateChangeStart”,function(toState,fromState){

? ? function body.........

? })

}])

說(shuō)明:

&stateChangeStart是ui-route模塊內(nèi)置的事件

回調(diào)函數(shù)的參數(shù)是固定的,toState,fomState分別表示“跳轉(zhuǎn)到的狀態(tài)”、“跳轉(zhuǎn)前的狀態(tài)”

這樣注冊(cè)完一個(gè)事件,在跳轉(zhuǎn)的時(shí)候就會(huì)自動(dòng)監(jiān)聽(tīng)。響應(yīng)你給定的一系列邏輯了。

更多api 可參考源碼:https://github.com/angular-ui/ui-router

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Address:https://www.zybuluo.com/XiangZhou/note/208532 Exp...
    天蠍蒗漫閱讀 11,645評(píng)論 2 55
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,366評(píng)論 25 708
  • AngularJS是什么?AngularJs(后面就簡(jiǎn)稱(chēng)ng了)是一個(gè)用于設(shè)計(jì)動(dòng)態(tài)web應(yīng)用的結(jié)構(gòu)框架。首先,它是...
    200813閱讀 1,807評(píng)論 0 3
  • 【JS-6】 如何使用ui-router? 小課堂【武漢分院第137期】 分享人:徐恒 目錄 1.背景介紹 2.知...
    愛(ài)上Shu的小刺猬閱讀 2,110評(píng)論 2 5
  • 我一直以為愛(ài)情是純粹的, 無(wú)論是在現(xiàn)實(shí)之中還是在虛幻之中。 我愿意為愛(ài)等候, 是因?yàn)槲蚁嘈盼医K會(huì)碰到那個(gè)對(duì)的人, ...
    草芥人閱讀 163評(píng)論 0 0

友情鏈接更多精彩內(nèi)容