美文网首页
关于Angular脏检查机制

关于Angular脏检查机制

作者: LuckyFBB | 来源:发表于2018-08-28 16:47 被阅读0次
    • 什么是脏检查
      对脏数据的检查就是脏检查,比较UI和后台数据是否一致。
    • 什么时候触发脏检查
      只有当UI事件、ajax请求或者timeout延迟事件,才会触发脏检查

    $watch对象

    • Angular每一个绑定到UI的数据,就会有一个$watch对象。
    • $watch对象包含三个参数
    watch = {
        name:'',      //当前的watch对象观测的数据名
        getNewValue:function($scope){ //得到新值
            ...
            return newValue;
            },
        listener:function(newValue,oldValue){  //当数据发生改变时需要执行的操作
            ...
        }
    }
    getNewValue() 可以得到当前$scope上的最新值,listener函数得到新值和旧值并进行一些操作。
    

    双向数据绑定

    • Angular实现了双向数据绑定。无非就是界面的操作能实时反映到数据,数据的更改也能在界面呈现。
    • 界面到数据的更改,是由UI事件,ajax请求,或者timeout等回调操作,而数据到界面的呈现则是由脏检查来做。

    脏检查的优缺点

    • 一次脏检查就是调用一次$apply()或者$digest(),将数据中最新的值呈现在界面上。
    • 每次UI事件变更,ajax还有timeout都会触发$apply()

    相关文章

      网友评论

          本文标题:关于Angular脏检查机制

          本文链接:https://www.haomeiwen.com/subject/npafwftx.html