Angular将从ngApp根元素开始“编译”DOM,处理在此过程中发现的任何指令和绑定。
在这种情况下,编译究竟意味着什么?
答案 0 :(得分:0)
ng-app指令是AngularJS Application的起点。它自动初始化AngularJS框架。在加载整个文档后,AngularJS框架将首先检查HTML文档中的ng-app指令,如果找到ng-app,它自行引导并编译HTML模板
通常,ng-app指令应放在HTML文档的根目录中,例如或标记,以便它可以控制整个DOM层次结构。但是,您可以将它放在任何DOM元素中。
ng-app指令还可以指定应用程序模块名称。此应用程序模块将应用程序的不同部分分开,例如控制器,服务,过滤器等。
引导: -
Angular在DOMContentLoaded事件时或在将angular.js脚本下载到浏览器并且document.readyState设置为完成时自动初始化/ bootstraps。此时,AngularJS会查找ng-app指令。当找到ng-app指令时,Angular将:
<强>编译: - 强> 编译器是一个AngularJS服务,它遍历DOM寻找属性。编译过程分两个阶段进行。
编译:遍历DOM并收集所有指令。结果是一个链接功能。
链接:将指令与范围相结合并生成实时视图。范围模型中的任何更改都会反映在视图中,并且 任何用户与视图的交互都会反映在范围中 模型。这使范围模型成为事实的唯一来源。