Even You的 Vue3 历程总结

449 阅读2分钟

采集自YouTube录像地址 ,理解作者Even You的初衷和历程,有助于理解Vue3的设计方向和解决哪些问题。本文做个简单总结,有兴趣还是去看看原视频吧(时长1小时)。

回顾部分

阶段一:构思阶段 2018.09-2019早期(class,TS,hooks,time slicing)

  • 2018-2-26 构思作为一个开发者可能需要哪些功能,面对目前的哪些问题
  • 2018-9-12 尝试所有可能有用的JS技术 (比如Reflect Proxy) ,此时还要同时维护Vue 2.x
  • 2018-9-19 创建了vue-next仓库
  • 2018-9-21 在Vue.js伦敦大会宣布了Vue 3 (他自己都没有意识到在2018年就已经开始着手Vue 3了)

阶段二:开放性尝试阶段 (此阶段的很多idea没有最终被采用)

  • 2019-1-4 发布RFC 进行开放性讨论
  • 2019-2-27 发布 Class API RFC
  • 2019-3~5 重新思考和研究了阶段一的一些问题(特别是Render 策略),并决定放弃Class API

阶段三: 实现阶段

  • 2019-5-6,重写了渲染逻辑(patch flagblock tree optimization
  • 2019-6-7, 发布 Function API RFC,经过反复讨论,确定下来
  • 2019-6~8 Composition API 设计和尝试
  • 2019-8-16 发布 Composition API RFC
  • 2019-9 适配2.x版本的Options API支持新compiler
  • 2019-10 实现v-model
  • 2019-11 实现Transition系统
  • 2019-12 开发工具(SFC , HMR (hot module reload))
  • 2020-1-2 发布3.0.0 alpha版本
  • 2020-1~4 实现SSR (服务端渲染,使用了很多新技术提升了2到3倍的性能)
  • 2020-4-16 发布 3.0.0 beta.1 版本
  • 2020-4~7 修复公测版本的问题,以及开发Router CLI Vuex ESLint-plugins等,写文档。
  • 2020-7-17 发布 3.0.0-rc.1 版本

总结:

  • 2
  • 37RFC
  • 2682 次提交
  • 628 次Pull Requests
  • 99 贡献者

技术部分

what's New in Vue 3

  • 更好的工程化
    • TS支持
  • 更快
    • Proxy响应式系统
    • 针对性的编译系统
  • 更小
    • Tree-shaking (rollup)
    • Compile-time flags
  • 更优秀的代码体积
    • Composition API
  • 更好的开发体验
    • 全新的单文件组件

内部模块:

借助模块化功能,实现了对Vue的拆分,所以允许我们仅使用部分模块,比如仅使用@vue/reactivity来实现响应式。 (在我看来终于不用侵入式的兼容Weex了,源码真是干净多了)

(待续。。。)

同时推荐一下我的其他文章: