angular应用和普通的html一样,只是在head部分多加入了angular脚本.当html文件被取回后,等到angular.js脚本被取回的时,浏览器会立即执行angular.js脚本,同时angular会设置一个时间监听器来监听DOMContextLoaded事件,现在就是angular登场的时候了.
当angular检测到DOMContextLoaded事件时,angular会查找我们html中的ng-app指令,然后创建运行需要的组件,即$injector,$compiler和$rootscope,这时就会开始解析dom树了.angular利用compile指令,会查找DOM树中的各种指令,并将每个指令的scope绑定到controller的scope中,然后链接到$rootscope中.
在DOM解析的过程中,指令可以式DOM树属性,名称等.当检测到指令时,angular同时会根据优先级排序这些指令.使用我们的$injector和$compiler来执行该指令,同时,当我们的指令中含有template模板时,angualar会生成相应的内联模板.每个节点的$compiler执行完成后,会调用链接函数,这个链接函数就会监视我们dom中的指令了.这样就有了实时视图了.
DOMContextloaded事件是在DOM解析完成之后,还未加载资源之前被触发的。window.onload事件是在所有的DOM解析以及资源获取完成之后才触发的。
angular的工作原理
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 第一个重要概念:Angular应用是由组件构成的。 可以将组件理解为一种教浏览器认识新HTML标签的方式。 应用 ...
- 【蝴蝶效应】 蝴蝶效应:上个世纪70年代,美国一个名叫洛伦兹的气象学家在解释空气系统理论时说,亚马逊雨林一只蝴蝶...
- 下面选了最近十年里,十位名人所做的毕业演讲。那么多的故事与经历,其实只想告诉你一件事: 面对迷茫和不确定的未来,我...
- sudo gem install gym 使用的是https://gems.ruby-china.org 的源,但...