大家好,我是IT修真院深圳分院学员,一枚正直善良的网络程序员。
今天给大家分享一下,修真院官网JS任务中AngularJS部分可能会使用到的知识点:
角的配置和运行分别是干什么的??
1.背景介绍
ANGULARJS模块加载
AngularJS模块可以在被加载和执行之前对其自身进行配置。我们可以在应用的加载阶段应用不同的逻辑组对其修改,在模块加载阶段,AngularJS会在提供者(提供)注册和配置的过程中对模块进行配置。在整个AngularJS的工作流中,这个阶段是唯一能够在应用启动前对其进行修改的部分。
AngularJS的工作流包括了配置块(config)和运行块(run)并且在编译期间会执行它们
2.知识剖析
2.1,配置(配置)
通过配置方法实现对模块的配置,AngularJS中的服务多数都对应一个提供者,用来执行与对应服务相同的功能或对其配置,比如$ log,$ http,$ location都是内置服务,相对应的“提供者”分别是$ logProvider,$ httpProvider,$ locationPorvider。
配置
2.2,运行块(运行)
和配置块不同,运行块在注入器创建之后被执行,它是所有AngularJS应用中第一个被执行的方法。
运行块是AngularJS中与主要方法最接近的概念。运行块中的代码块通常很难进行单元测试,它是和应用本身高度耦合的。
运行块通常用来注册全局的事件监听器。例如,我们会在.RUN()块中设置路由事件的监听器以及过滤未经授权的请求。
调用方式1:服务也是以模块形式存在的,对外提供特定功能,将服务做为依赖注入进去的,然后再进行调用,调用方式2:直接运行相应的服务模块,AngularJS提供了运行方法来实现。
运行方法还是最先执行的,利用这个特点我们可以将一些需要优先执行的功能通过运行方法来运行。
假设我们需要在每次路由发生变化时,都执行一个函数来验证用户的权限,放置这个功能唯一合理的地方就是运行方法:
跑
3.常见问题
如何通过config配置一个路由模块?
4.解决方案
下面实例使用的是第三方UI路由器
UI路由器中配置配置
5.扩展思考
供应商是个啥?
$提供服务负责告诉角度如何创造一个新的可注入的东西:。即服务服务会被叫做供应商的东西来定义,你可以使用$提供来创建一个供应商你需要使用$提供中的供应商( )方法来定义一个供应商,同时你也可以通过要求提供$被注入到一个应用的配置函数中来获得$提供服务。
6.参考文献
参考一:角权威指南
参考二:AngularJS ui-router配置
7.更多讨论
1.angularjs中配置和运行的区别?
执行顺序不同,注入服务类型不同
2.什么样的东西能够被注入到配置里面呢?
提供商(提供者),常数(常量)
3.为什么UI的路由器要配置的配置,如果不配置会再怎么样?
不配置angularjs找不到它,会报错。