当前位置: 首页 > news >正文

Vue2 和 Vue3 View

Vue2 和 Vue3 面试题总结

  1. MVVM 和 MVC 的区别
    MVVM(Model-View-ViewModel):

双向数据绑定:View 和 Model 通过 ViewModel 自动同步。
核心:数据驱动视图,ViewModel 负责处理业务逻辑和数据处理。
优点:解耦 View 和 Model,便于测试和维护。
MVC(Model-View-Controller):

单向通信:View 通过 Controller 操作 Model,Model 变化后通知 View 更新。
缺点:View 和 Model 未完全解耦,Controller 可能变得臃肿。
2. Vue2 和 Vue3 的主要区别
特性 Vue2 Vue3
响应式原理 Object.defineProperty Proxy
组合式 API Options API Composition API
生命周期 传统钩子(如 created) setup + onMounted 等
性能优化 虚拟 DOM 全量对比 静态标记 + Block Tree
新组件 无 Fragment、Teleport、Suspense
3. Vue3 的优势
性能更好:Proxy 响应式、编译优化(Block Tree)。
组合式 API:逻辑复用更灵活(类似 React Hooks)。
更好的 TS 支持:类型推断更完善。
体积更小:Tree-shaking 优化。
新特性:Teleport(传送门)、Suspense(异步组件加载状态)。
4. 响应式原理
Vue2:

对象:Object.defineProperty 劫持属性。
数组:重写数组方法(如 push、pop)。
缺点:无法检测新增/删除属性,需用 $set。
Vue3:

使用 Proxy 代理整个对象,支持动态属性。
使用 Reflect 操作源对象。
优点:支持 Map/Set,性能更高。
5. Composition API vs Options API
Composition API:

逻辑按功能组织,代码复用更灵活(如自定义 Hook)。

更好的 TypeScript 支持。

示例:

javascript

setup() {
const count = ref(0);
const double = computed(() => count.value * 2);
return { count, double };
}
Options API:

传统方式(data、methods 分块)。
适合简单场景。
6. 常用 API
响应式数据:

ref:基本类型(通过 .value 访问)。
reactive:对象类型。
toRefs:解构响应式对象不丢失响应性。
生命周期:

setup 替代 beforeCreate/created。
onMounted、onUpdated 等。
工具函数:

watch/watchEffect:监听数据变化。
provide/inject:跨组件通信。
7. 常见问题
v-if 和 v-for 优先级:

Vue2:v-for 优先。
Vue3:v-if 优先。
动态组件:

vue

状态管理:

Vue3 推荐 Pinia(替代 Vuex),更简洁。
8. 代码优化
script setup 语法糖:

自动注册组件,无需 return。

示例:

vue

性能优化:

shallowRef/shallowReactive:浅层响应式。
markRaw:跳过 Proxy 代理(如组件实例)。
9. 新组件
Teleport:将组件渲染到 DOM 任意位置。

vue

Suspense:处理异步组件加载状态。

vue

http://www.dtcms.com/a/450076.html

相关文章:

  • 乐趣做网站厦门做网站的公司
  • 使用jmeter做压力测试
  • [工作流节点15] 推送消息节点在企业内部通知中的应用实践
  • 热转印 东莞网站建设ui界面设计英文
  • 【数据结构学习篇】--树
  • Linux中驱动程序通过fasync异步通知应用程序的实现
  • MySQL索引优化:让查询快如闪电
  • 什么是营销型网站呢什么网站做新产品代理
  • 海沧建设网站多少jetpack报错 wordpress
  • 从零起步学习Redis || 第九章:缓存雪崩,缓存击穿,缓存穿透三大问题的成因及实战解决方案
  • 手机网站 微信链接网站建设工具
  • 网站建设年度总结客源通app下载
  • 欧美做暧网站jsp可以做网站吗
  • Variational Quantum Eigensolver笔记
  • 操作系统应用开发(二十四)RustDesk 404错误—东方仙盟筑基期
  • 网站菜单样式关于网站策划的文章
  • 做网站多久才会有收益网站打开显示站点目录
  • python异常
  • STM32CubeMonitor使用记录
  • 网站这么做海城seo网站排名优化推广
  • 做网站后的收获宁波seo软件免费课程
  • 网站设计精美案例常见软件开发模型有哪些
  • dedecms 网站还原数据之后 乱码网站开发用什么编程
  • 美发店会员管理软件培训
  • 建设部网站不支持360深圳市南山区住房和建设局网站官网
  • 电子签名法律实务全解析:从合规基础到风险防控的实战指南
  • 1元购网站建设广西壮族自治区市场监督管理局官网
  • 陕西省交通建设集团公司门户网站wordpress站内统计插件
  • PyTorch梯度裁剪与避免Loss为NaN的完整指南
  • 【UE5】新建Editor Standalone Window插件,之前(或当前)创建插件的按钮消失(被顶掉/占用)的问题