angular run()运行块
2016-05-23 18:37
501 查看
和配置块不同,运行块在注入器创建之后被执行,它是所有AngularJS应用中第一个被执行的方法。
运行块是AngularJS中与
运行块通常用来注册全局的事件监听器。例如,我们会在
假设我们需要在每次路由发生变化时,都执行一个函数来验证用户的权限,放置这个功能唯一合理的地方就是
运行块是AngularJS中与
main方法最接近的概念。运行块中的代码块通常很难进行单元测试,它是和应用本身高度耦合的。
运行块通常用来注册全局的事件监听器。例如,我们会在
.run()块中设置路由事件的监听器以及过滤未经授权的请求。
假设我们需要在每次路由发生变化时,都执行一个函数来验证用户的权限,放置这个功能唯一合理的地方就是
run方法:
angular.module('myApp', ['ngRoute']) .run(function($rootScope, AuthService) { $rootScope.$on('$routeChangeStart', function(evt, next, current) { // 如果用户未登录 if (!AuthService.userLoggedIn()) { if (next.templateUrl === "login.html") { // 已经转向登录路由因此无需重定向 } else { $location.path('/login'); } } }); });
run()函数接受个参数。
initializeFn(函数)AngularJS在注入器创建后会执行这个函数。
相关文章推荐
- 表单验证<AngularJs> form valid
- angularjs 实现国际化
- 快速搭建Web环境 Angularjs + Express3 + Bootstrap3
- AngularJs轮询器写法
- 走进AngularJs(七) 过滤器(filter) - 吕大豹
- AngularJS上拉加载问题解决方法
- angular - filter(自定义)
- AngularJS进阶(三十八)上拉加载问题解决方法
- AngularJS进阶(三十八)上拉加载问题解决方法
- angularjs事件指令--ngClick、ngDbclick、ngCut、ngChange、ngKeydown...
- AngularJS jqLite详情
- angularjs学习笔记—事件指令
- AngularJS 的常用特性(五)
- AngularJS 的常用特性(四)
- AngularJS 的常用特性(三)
- AngularJS $route路由
- AngularJS 的常用特性(二)
- AngularJS 的常用特性(一)
- angularJs关于指令的一些冷门属性
- [Angularjs]asp.net mvc+angularjs+web api单页应用之CRUD操作