page contents

Vue data 中某一个属性的值发生改变后,视图会立即同步执行重新渲染吗?

轩辕小不懂 发布于 2021-12-28 13:58
阅读 1097
收藏 0
分类:WEB前端开发
  • vue
  • 2759
    Nen
    Nen
    - 程序员

    不会立即同步执行重新渲染。

    Vue 实现响应式并不是数据发生变化之后 DOM 立即变化,而是按一定的策略进行 DOM 的更新。

    Vue 在更新 DOM 时是异步执行的。只要侦听到数据变化, Vue 将开启一个队列,并缓冲在同一事件循环中发生的所有数据变更。

    如果同一个watcher被多次触发,只会被推入到队列中一次。这种在缓冲时去除重复数据对于避免不必要的计算和 DOM 操作是非常重要的。

    然后,在下一个的事件循环”tick”中,Vue 刷新队列并执行实际(已去重的)工作。

    请先 登录 后评论