3个阶段:
一、加载阶段
加载angular.js的源码,找到ng-app确定应用边界范围。
二、编译阶段 compile
查找所有指令,保存在一个列表中
对所有指令按优先级(property属性值)排序,根据指令的配置参数(template、transclude等)转换为DOM,使指令初具形态。
三、链接阶段 link
执行合体后的link函数。link一般用来操作DOM、绑定事件监听。
为每条指令运行link函数,即将view和scope链接起来,数据绑定;通过在数据上注册监听器来动态修改scope中的数据,或者使用$watch监听scope中的变量来修改DOM,从而建立双向绑定。