Vue.js 2和Vue.js 3作为同一框架的不同版本,在很多方面保持了相同或相似的设计和理念,主要的相同点有:
- 模板语法相同
包括插值(Mustache语法)、指令(v-bind等)、组件化等语法在两者中基本一致。这保证了对开发人员 API层面的认知成本不高。
- 组件化开发模式相同
都采用组件化模式,有组件间的数据流,通过props down, events up的方式通信。这是Vue的核心特性。
- 响应式系统相似
两者都采用可变的数据监听系统,当数据变化时更新界面。Vue3重写了监听逻辑,优化了流畅度,但理念类似。
*单文件组件(SFC)
Vue中的SFC 接口即以.vue结尾的文件组件,这个概念在两者中均存在。
- Runtime + Compiler 架构一致
即可通过浏览器直接使用,也可以将模板预编译为渲染函数提高性能,这个设计架构保持一致。
- Ecosystem相对稳定
Vue3针对现有生态做了长期平滑过渡的规划,所以现有的插件生态也基本能稳定迁移。
所以从语法、架构到生态,两者保持了很高的一致性和兼容性是它们最核心的共性。