AngularJS如何异步遍历Angular模板(HTML+AngularJS指令)
How does AngularJS traverse the Angular template (HTML + AngularJS Directives) asynchronously?
我正在阅读Brad Green和Shyama Sheshadari的AngularJS书,发现了以下文本:
基本启动流程如下所示:
1.用户请求您的应用程序的第一页
2.用户的浏览器与您的服务器建立HTTP连接,并加载包含模板的dex.html页面
3.以角度加载到页面中,等待页面完全加载,然后查找ng应用程序定义其模板边界
4.Angular遍历模板并查找指令和绑定。结果注册监听器和DOM操作,以及获取初始数据从服务器。这项工作的最终结果是该应用程序被引导模板被转换为作为DOM的视图
5.您连接到服务器以加载需要向用户显示的其他数据需要。步骤1到3是每个Angular应用程序的标准步骤。在第4步5你有选择。这些步骤可以同步发生,也可以异步。为了提高性能,您的应用程序需要显示的数据第一个视图中的用户可以使用HTML模板避免多次请求。
第4步如何异步执行?此外,当作者说对于第一次迭代,数据可以与HTML一起发送时,他的意思是什么?HTML总是有来自Angular指令的数据,不是吗?
如果HTML包含指令,则该指令可能异步加载模板,例如
至于嵌入数据:想象一下,您的应用程序需要一个用户对象。现在,控制器可以从服务器加载该数据,以便应用程序可以使用该数据。但这需要另一个要求。
相反,您可以像这样将用户对象直接嵌入到页面中,例如:
<script ...>
var user = {
name: 'Me',
...
};
应用程序可以立即使用数据,而无需提出额外的请求。
相关文章:
- 将JSON对象传递给angular指令
- Angular指令在alertify setContent内容中不起作用
- 如何在angular js中使用指令.不适用于我的情况,为什么
- 向动态生成的DOM添加Angular自定义指令
- 使用指令的angular js中的Like和different
- angular type=[number]指令来阻止粘贴
- Angular Datetimepicker:指令'的模板;uib时间选择器'必须只有一个根元素
- 由于$compile,Javascript(Angular)嵌套指令加载了两次
- 在其他javascript框架模板中运行angular指令
- 如何在给定的angular应用程序中获取所有指令名称
- Angular,从指令控制器中的控制器触发函数
- AngularJS:带有HTML和angular表达式的指令;编译”;具有外部范围的内容
- 将jquery插件转换为指令angular
- 基于嵌套指令Angular的宽度更改文本
- 如何将函数添加到禁用的指令 - Angular 2
- 我在从我的指令 Angular 访问控制器的范围时遇到问题
- 如何将变量从控制器传递到指令?Angular.JS
- 单指令Angular JS中的可选/多模板URL
- 调用链接函数指令Angular 1 ES6
- 指令angular中的访问范围控制器变量