国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

AngularJS監聽路由的變化示例代碼

2019-11-20 08:54:09
字體:
來源:轉載
供稿:網友

話不多說,我們下面直接來看實現的示例代碼

【一】Angular 路由狀態發生改變時可以通過' $stateChangeStart '、' $stateChangeSuccess '、' $stateChangeError '監聽,通過注入'$location'實現狀態的管理

代碼示例如下:

function run($ionicPlatform, $location, Service, $rootScope, $stateParams) {   //路由監聽事件   $rootScope.$on('$stateChangeStart',     function(event, toState, toParams, fromState, fromParams) {      console.log(event);      console.log(toState);      console.log(toParams);      console.log(fromState);      console.log(fromParams);      if (toState.name == "homePage") {       //獲取參數之后可以調請求判斷需要渲染什么頁面,渲染不同的頁面通過 $location 實現       if (toParams.id == 10) {        //$location.path();//獲取路由地址        // $location.path('/validation').replace();        // event.preventDefault()可以阻止模板解析       }      }     })    // stateChangeSuccess 當模板解析完成后觸發   $rootScope.$on('$stateChangeSuccess', function(event, toState, toParams, fromState, fromParams) {    })    // $stateChangeError 當模板解析過程中發生錯誤時觸發   $rootScope.$on('$stateChangeError', function(event, toState, toParams, fromState, fromParams, error) {    })  } 

【2】在頁面渲染中 可通過' $viewContentLoading '和 ' $viewContentLoaded '監聽頁面渲染狀態:渲染開始和渲染結束。

(在控制器中添加以下代碼實現監聽)

// $viewContentLoading- 當視圖開始加載,DOM渲染完成之前觸發,該事件將在$scope鏈上廣播此事件。 scope.$watch('$viewContentLoading',function(event, viewConfig){  alert('模板加載完成前'); }); //$viewContentLoaded- 當視圖加載完成,DOM渲染完成之后觸發,視圖所在的$scope發出該事件。 $scope.$watch('$viewContentLoaded',function(event){   alert('模板加載完成后'); }); 

總結

以上就是這篇文章的全部內容,希望能對大家的學習或者工作帶來一定的幫助,如果有疑問大家可以留言交流。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 墨竹工卡县| 周至县| 抚远县| 林甸县| 贵定县| 宜川县| 古蔺县| 弥渡县| 南川市| 东海县| 军事| 赞皇县| 兴化市| 理塘县| 读书| 乌拉特中旗| 亚东县| 达州市| 五河县| 昌黎县| 株洲县| 稷山县| 中山市| 凤凰县| 天祝| 宣武区| 承德县| 高要市| 孟津县| 文山县| 沛县| 祁门县| 科技| 井研县| 东平县| 永和县| 邳州市| 石首市| 永寿县| 中卫市| 望江县|