vue3 面试题:vue3和vue2有什么区别?
嗨,我是小路。今天主要和大家分享的主题是“vue3 和vue2有什么区别?”。
以下主要从性能、新特性、对typescript支持、this关键字、状态管理、周期函数的方面分析下vue3和vue2的区别。
1.性能提升
方法:vue3通过重写了虚拟DOM实例,用更高效的算法,减少不必要的DOM操作,提高渲染的速度;优化编译模版,提高组件初始优化速度和SSR速度。
2.新特性
方法:vue3引入了组合式API,兼容vue2的选项式API,解决了vue2的代码散乱、提高了代码的可读性和复用性。
vue3的组合式API,让前端更像后端的代码一样便于阅读和封装。
3.周期函数
方法:vue3的生命周期函数也发生了变化,大部分的生命周期函数前都加上了on,如onMounted、onBeforeCreate、onUnmounted等等。
新增setup函数,其围绕beforeCreate和create运行,不需要显示钩子函数。
4.typescript支持
方法:vue3从设计开始就考虑了typescript的支持,而vue2虽然支持typescript,但支持有限,类型推断和检查比较弱。
5.状态管理工具
方法:vue2主要运用Vuex,通过state、getters、mutations和action组织管理状态,采用的单一全局状态树。
vue3使用pinia,允许有多个store模块,支持模块化状态管理,更加灵活,而且pinia比vuex少一个mutations。
6.this关键字
方法:vue3常用组合式api很少使用this关键字,vue2的选项式api常用关键字。
7.减少打包体积
方法:vue3的虚拟dom采用模块化设计,开发者可以进行tree-shaking优化,减少最终打包体积。
都看到这里了,记得【点赞】+【关注】哟。
参考文章:
https://baijiahao.baidu.com/s?id=1816421934076380477&wfr=spider&for=pc
https://www.baidu.com/s?ie=UTF-8&wd=vue3%E5%92%8Cvue2%E7%9A%84%E5%8C%BA%E5%88%AB%E6%98%AF%E4%BB%80%E4%B9%88