国产探花免费观看_亚洲丰满少妇自慰呻吟_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('模板加載完成后'); }); 

總結

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 河间市| 桦南县| 浙江省| 南京市| 盐亭县| 宁晋县| 横山县| 英山县| 丹棱县| 迁安市| 辽宁省| 庆安县| 赣榆县| 阿尔山市| 枞阳县| 黄骅市| 金川县| 广宗县| 南投县| 奉节县| 博爱县| 呼伦贝尔市| 颍上县| 黄梅县| 香港| 旬邑县| 奈曼旗| 克什克腾旗| 禹城市| 阳谷县| 枣强县| 灵川县| 商城县| 井冈山市| 江陵县| 柞水县| 财经| 舒兰市| 祁门县| 海林市| 龙江县|