双向数据绑定
Angular 在它的引擎盖下有一些魔力。它可以将 DOM 绑定到真正的 js 变量。
Angular 使用一个名为“ digest loop ”的循环,它在变量调用之后被调用 - 调用更新 DOM 的回调。
例如,ng-model
指令将 keyup
eventListener 附加到此输入:
<input ng-model="variable" />
每次 keyup
事件触发时,摘要循环都会启动。
在某些时候,摘要循环遍历回调,该回调更新此范围的内容:
<span>{{variable}}</span>
这个例子的基本生命周期总结了(非常示意性地)角度如何工作::
- 角度扫描 html
ng-model
指令在输入上创建一个keyup
监听器expression
inside span 添加回调到摘要周期
- 用户与输入交互
keyup
听众开始摘要周期- 摘要周期调用回调
- 回调更新跨越内容