绿色、免费的各种工具分享给你

所在位置:主页 > 学习教程 > 题库 > vue >
vue3面试题必问题和答案

vue3面试题必问题和答案

类型: vue 时间: 2025-05-06 版本: v1.0 大小: 3.21M 语言:简体中文

内容介绍

详情简介

vue3面试题大全为大家整理了经典的vue3面试题,从vue2与vue3之间的区别,到核心原理,到diff算法的区别,再到响应式原理的实现方式,为你提供细致的面试题讲解,面试再不是问题!

vue3采用的compositionAPI和vue2的OptionsAPI有什么区别?

Options API,即大家常说的选项API,即以vue为后缀的文件,通过定义methods,computed,watch,data等属性与方法,共同处理页面逻辑。
当组件变得复杂,导致对应属性的列表也会增长,这可能会导致组件难以阅读和理解;
可以看到Options代码编写方式,如果是组件状态,则写在data属性上,如果是方法,则写在methods属性上…
用组件的选项 (data、computed、methods、watch) 组织逻辑在大多数情况下都有效;
compositionAPI,通过导入ref,reactive,onMounted,watch,computed等hook,提供了更加灵活的调用方式。

原理区别

Vue2
Vue2的响应式原理,使用的是Object对象上的原型方法,Object.defineProperty()来劫持各个属性的setter/getter,通过监听的方式,在数据发生变化的时候通知订阅者更新视图。
缺点:
需要遍历整个对象,如果对象嵌套过深,需要递归遍历,性能会下降
无法检测到数组的新增和删除,
无法检测到对象的属性添加和删除
数组arr.length = 0 无法实现响应式,只有通过pop(),unshift()等方法才能够响应式实现视图变更。
Vue3
Vue3使用的是Proxy来劫持整个对象,从而实现响应式。Proxy可以直接监听对象和数组的变化,不需要遍历整个对象,性能会更好。
后续官方提出了ref API,可以监听基本数据类型的变化。
vue3通过Proxy来对整个对象进行劫持,并非监听对象属性的变化,而是直接监听对象和数组整体的变化,无需遍历对象的每个属性,这解决了vue2响应式后续添加的属性无法实现响应式的问题。
引用数据类型:Proxy
基本数据类型:使用对象的属性来监听——> RefImpl
优点:
可以监听到对象属性的添加和删除
可以监听到对象和数组的变化
浅层监听,减少了性能开销,只有当对象的深层属性被使用到时才会递归遍历监听。

vue3的优势有哪些

1.更小的体积
当使用webpack进行打包时,vue3使用tree-shaking功能,将一些不需要的模块进行的剪切,只打包用到的模块,大大的减小了体积。
2.速度快
vue3通过重写虚拟DOM,在编译节点进行了模板的优化,使之速度比vue2更加高效。
3.更加灵活
通过导入试使用,使用方式更加灵活,能够与别的组件灵活复用。
4.更易使用
将各类api通过导出的方式提取出来,方便维护与使用。
5.接近原生
可以自定义渲染API。

指令优化

v-model指令变化
Vue 3:在模板中可以多次使用 v-model,并可自定义修饰符.
html 代码解读复制代码<CustomInput v-model:visible="val" v-model:text="text" />
Vue 2:单个 v-model只支持在一个组件中使用。
v-if 和 v-for 的级别变化
Vue 3:v-if 优先级高于 v-for,避免不必要的循环。
Vue 2:v-for 优先级高于 v-if。

题目大全

1.vue3.0所采用的compositionAPI和Vue2使用的optionsAPI有什么不同?
2.vue3.0的设计目标是什么?做了哪些优化?
3.用vue3.0写过组件吗?如果想实现一个Modal你会怎么实现?
4.vue3.0性能提升主要是通过哪几方面体现的?
5.vue3.0里为什么要用proxyAPI代替defindPropertyAPI?
6.说说vue3.0中的treeshaking特性,举例说明一下?
免费绿色
展开
  • 游戏热度榜
  • 软件热度榜