angularjs 路由问题处理收集

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) { 

  })
 }

在页面渲染中 可通过$viewContentLoading 和  $viewContentLoaded监听页面渲染状态:渲染开始和渲染结束。

scope.$watch(‘$viewContentLoading‘,function(event, viewConfig){
 alert(‘模板加载完成前‘);
});
//$viewContentLoaded- 当视图加载完成,DOM渲染完成之后触发,视图所在的$scope发出该事件。
$scope.$watch(‘$viewContentLoaded‘,function(event){
  alert(‘模板加载完成后‘);
});
时间: 2024-08-04 06:22:15

angularjs 路由问题处理收集的相关文章

angularjs 路由 $routeProvider

Angularjs路由描述:定义路由规则(routeProvider),然后通过不同的URL,告诉(ng-app)加载哪个页面(HTML),再渲染到(ng-app)视图(ng-view)中. 主界面index.html <!DOCTYPE html> <html> <head></head> <body> <div ng-app="routeApp"> <h3>路由</h3> <div

AngularJS路由系列(6)-- UI-Router的嵌套State

本系列探寻AngularJS的路由机制,在WebStorm下开发.本篇主要涉及UI-Route的嵌套State. 假设一个主视图上有两个部分视图,部分视图1和部分视图2,主视图对应着一个state,两个部分视图分别对应state1和state2,那state与state1和state2形成了嵌套关系. AngularJS路由系列包括: 1.AngularJS路由系列(1)--基本路由配置2.AngularJS路由系列(2)--刷新.查看路由,路由事件和URL格式,获取路由参数,路由的Resolv

AngularJS路由系列(5)-- UI-Router的路由约束、Resolve属性、路由附加数据、路由进入退出事件

本系列探寻AngularJS的路由机制,在WebStorm下开发.主要包括: ● UI-Router约束路由参数● UI-Router的Resolve属性● UI-Router给路由附加数据● UI-Router的onEnter和onExit事件 AngularJS路由系列包括: 1.AngularJS路由系列(1)--基本路由配置2.AngularJS路由系列(2)--刷新.查看路由,路由事件和URL格式,获取路由参数,路由的Resolve3.AngularJS路由系列(3)-- UI-Rou

AngularJS路由系列(3)-- UI-Router初体验

本系列探寻AngularJS的路由机制,在WebStorm下开发. AngularJS路由系列包括: 1.AngularJS路由系列(1)--基本路由配置2.AngularJS路由系列(2)--刷新.查看路由,路由事件和URL格式,获取路由参数,路由的Resolve3.AngularJS路由系列(3)-- UI-Router初体验4.AngularJS路由系列(4)-- UI-Router的$state服务.路由事件.获取路由参数5.AngularJS路由系列(5)-- UI-Router的路由

angularjs路由path方式实现原理探究

angularjs路由 https://angular.io/guide/router 通过URL解释, 来定位客户端生成的浏览器端视图. 你可绑定路由到页面的链接上, 当用户点击链接, 可以浏览到相应的应用视图. The browser is a familiar model of application navigation: Enter a URL in the address bar and the browser navigates to a corresponding page. C

AngularJS 路由

AngularJS 路由允许我们通过不同的 URL 访问不同的内容. 通过 AngularJS 可以实现多视图的单页Web应用(single page web application,SPA). 通常我们的URL形式为 http://runoob.com/first/page,但在单页Web应用中 AngularJS 通过 # + 标记 实现,例如: http://runoob.com/#/first http://runoob.com/#/second http://runoob.com/#/

Angularjs路由需要了解的那点事

我们知道angularjs是特别适合单页面应用,为了通过单页面完成复杂的业务功能,势必需要能够从一个视图跳转到另外一个视图,也就是需要在单个页面里边加载不同的模板.为了完成这个功能angularjs为我们提供了路由服务($routeProvider). 先看下我们的示例代码,html框架页index.html <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&qu

AngularJS“多重路由”嵌套模块——AngularJS“路由”嵌套学习资料教程

这是小编的一些学习资料,理论上只是为了自己以后学习需要的,但是还是需要认真对待的 以下内容仅供参考,请慎重使用学习 1.AngularJS路由嵌套 Angularjs本身自带路由模块,可以满足通过不同的 URL 访问不同的内容,当然实际应用为在单页面点击不同按钮等加载不同页面 之前有关于angular-route路由的介绍,但是只能一层路由嵌套,如果需要多重嵌套就是不够用了 UI-Router作为AngularUI为开发者提供的其中实用的一个模块,根据URL状态组织和控制界面UI的渲染,不是仅仅

AngularJS路由和模板

前言 如果想开发一款类似gmail的web应用,我们怎么做呢? 以jQuery的思路,做响应式的架构设计时,我们要监听所有点击事件,通过事件函数触发我们加载数据,提交,弹框,验证等的功能:以 AngularJS的思路,做声明式的架构设计时,我们通过指令和路由先设定好,什么样的操作干什么事情,等事件发生时,程序就会知道该干什么了. 今天说一下,AngularJS是如何实现前端路由功能的! 目录 AngularJS路由介绍 路由的代码实现 实现效果截图 1. AngularJS路由介绍 Angula