• Proxy 响应式
  • PatchFlag
  • hoistStatic
  • cacheHandler
  • SSR 优化
  • tree-shaking

PatchFlag

  • 编译模板时,动态节点做标记
  • 标记,分为不同的类型,如 TEXT PROPS
  • diff 算法时,可以区分静态节点,以及不同类型的动态节点

https://vue-next-template-explorer.netlify.app
image.png
vue3里面静态节点就不比了,没有必要

hoistStatic

  • 将静态节点的定义,提升到父作用域,缓存起来
  • 多个相邻的静态节点,会被合并起来
  • 典型的拿空间换时间的优化策略

    cacheHandler

  • 缓存事件

    SSR 优化

  • 静态节点直接输出,绕过了 vdom

  • 动态节点,还是需要动态渲染的

    tree shaking

  • 编译时,根据不同的情况,引入不同的 API