机制:
是angular中双向数据绑定的原理,是通过一个原先的旧值和当前的新值作比较是否相等,如果相等则不会触发脏检查机制,如果不相等则会触发脏检查机制,$$watcher进行监听,触发新老值的替换。
在angular的程序中,一个以{{}}或者指令绑定的视图,就会在此绑定的视图上有一个$watch事件,将数据中最新的值呈现在界面上,所有的watch储存在$$warcher中,一次脏检查就是调用已从$spply()或者$digest(),遍历检查所有watch,将数据中最新值呈现在桌面上。
$$watcher:是监听或者是$apply()和$digest()之间的通讯桥梁
$apply()是监听数据变化的方法
$digest()是执行更改改变后的数据
性能:
脏检查机制会造成性能的浪费,消耗性能,但是不会浪费多的是,angular中ng-if,表达式,多层过滤器(需要循环处理),直接操作DOM元素等会造成程序的性能的大量浪费
原文地址:https://www.cnblogs.com/DJF-Dream/p/8858145.html
时间: 2024-10-11 02:12:48