angularJS中对指令的解析与执行过程是这样的:
· 浏览器得到 HTML 字符串内容,解析得到 DOM 结构。
· ng 引入,把 DOM 结构扔给 $compile 函数处理:
o 找出 DOM 结构中有 变量占位符
o 匹配找出 DOM 中包含的所有指令引用
o 把指令关联到 DOM
o 关联到 DOM 的多个指令 按 权重排列
o 执行指令中的 compile 函数(改变 DOM 结构,返回 link 函数)
o 得到的所有 link 函数组成一个列表作为 $compile 函数的返回
执行 link 函数(连接模板的 scope)。
· 浏览器得到 HTML 字符串内容,解析得到 DOM 结构。
· ng 引入,把 DOM 结构扔给 $compile 函数处理:
o 找出 DOM 结构中有 变量占位符
o 匹配找出 DOM 中包含的所有指令引用
o 把指令关联到 DOM
o 关联到 DOM 的多个指令 按 权重排列
o 执行指令中的 compile 函数(改变 DOM 结构,返回 link 函数)
o 得到的所有 link 函数组成一个列表作为 $compile 函数的返回
执行 link 函数(连接模板的 scope)。