浏览器加载Angular Web应用的方式
来源:互联网 发布:windows直接进入桌面 编辑:程序博客网 时间:2024/05/23 10:58
浏览器加载Angular Web应用的方式:
1、浏览器获取Html代码并开始构建Dom树。
2、浏览器在构建Dom树的过程中遇到了angular.js,这时就会提取脚本(angular.js文件),暂停Dom树的构建直至js文件提取完成。
3、angular.js文件提取完成后会设置事件监听器来监听浏览器的DomContentLoaded事件(此事件会在html文档加载完毕即Dom树构建完成后触发)。
4、当angular.js文件监测到DomContentLoaded事件时会立刻启动,首先查找ng-app指令,然后创建一系列必要的组件(即$injector、$compile、$rootscope),然后开始解析刚才创建好的Dom树。
5、angular中的$compile服务会遍历Dom树并搜集它找到的所有指令。
6、执行$injector服务查找的所有指令的compile函数。
7、每个指令的编译方法运行完成后,$xompile服务会调用链接函数,创建实时视图。
8、等待事件触发,angular会执行$digest循环。
9、当有变化发生时调用$watch函数。
10、再次执行$digest循环,直至没有变化。
11、一旦$digest循环稳定下来,执行过程就会离开angular上下文并且回到浏览器中,Dom将会被渲染到这里。
以上仅为自己的理解,仅供参考。
阅读全文
0 0
- 浏览器加载Angular Web应用的方式
- 示例可重用的web component方式组织angular应用模块
- angular 的 下拉加载
- 编写你的第一个Angular Web应用
- angular和webstorm 加载本地数据,实现“单机版”web应用
- Javascript 异步加载详解(浏览器在javascript的加载方式)
- Javascript 异步加载详解(浏览器在javascript的加载方式)
- Javascript 异步加载详解(浏览器在javascript的加载方式)
- Javascript 异步加载详解(浏览器在javascript的加载方式)
- Angular的启动方式
- 构建兼容浏览器的Angularjs web应用
- web应用中spring提供了几种加载方式
- 简单的angular应用
- 对WEB应用及WEB浏览器的一些思考
- 【转载】各浏览器加载资源的方式区别
- angular tree 异步加载下一级菜单 的正确修改方式
- angular的http请求方式
- 我们组的Web应用开发方式
- KMP算法理解(转)
- KMP算法中next数组的理解与算法的实现(java语言)
- 最小生成树算法讨论(转)
- 如何理解拓扑排序算法(转)
- 关键路径介绍(转)
- 浏览器加载Angular Web应用的方式
- 最短路径算法----Dijkstra (转)
- 最短路径算法----floyd(转)
- 引入Fresco框架
- DOM基础
- 用new关键字对一个String 变量赋值和用literal值直接赋值有什么不同(转)
- ionic3自定义tabs图标
- Python模块:time模块详解(转)
- HTTPS和HTTP的区别