美文网首页
理解virtual dom

理解virtual dom

作者: 斗伽 | 来源:发表于2021-04-11 10:46 被阅读0次

    Virtual DOM(虚拟 DOM),

    是由普通的 JS 对象来描述 DOM 对象,因为不是真实的 DOM 对象,所以叫 Virtual DOM

    为什么使用 Virtual DOM

    • 手动操作 DOM 比较麻烦,还需要考虑浏览器兼容性问题,虽然有 jQuery 等库简化 DOM 操作,
    • 但是随着项目的复杂 DOM 操作复杂提升,为了简化 DOM 的复杂操作于是出现了各种 MVVM 框架,MVVM 框架解决了视图和状态的同步问题
    • 为了简化视图的操作我们可以使用模板引擎,但是模板引擎没有解决跟踪状态变化的问题,于是Virtual DOM 出现了;Virtual DOM 的好处是当状态改变时不需要立即更新 DOM,只需要创建一个虚拟树来描述DOM, Virtual DOM 内部将弄清楚如何有效(diff)的更新 DOM
    • 跨端处理
    • 参考 github 上 virtual-dom 的描述
      虚拟 DOM 可以维护程序的状态,跟踪上一次的状态
      通过比较前后两次状态的差异更新真实 DOM

    虚拟 DOM 的作用

    • 维护视图和状态的关系
    • 复杂视图情况下提升渲染性能
    • 除了渲染 DOM 以外,还可以实现 SSR(Nuxt.js/Next.js)、原生应用(Weex/React Native)、小程序(mpvue/uni-app)等

    Vue 2.x 内部使用的 Virtual DOM 就是改造的 Snabbdom

    相关文章

      网友评论

          本文标题:理解virtual dom

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