首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Vue0.11版本源码阅读系列五:批量更新是怎么做的

    一个用来存放用户的watcher,一个用来存放指令更新的watcher var queue = [] var userQueue = [] var has = {} var waiting = false var flushing...= false exports.push = function (job) { // job就是watcher实例 var id = job.id // 在没有flushing的情况下has...has[id] || flushing) { has[id] = 1 // 首先要说明的是通过$watch方法或者watch选项生成的watcher代表是用户的,user属性为true...// 这里注释说在执行任务中用户的watcher可能会触发非user的指令更新,所以要立即更新这个被触发的指令,否则flushing这个变量是不需要的 if (flushing && !...function flush () { flushing = true run(queue) run(userQueue) // 清空队列和复位变量 reset() } function

    44120
    领券