vue3面试题

一.ref与reactive
ref:
1.函数参数可以是基本类型也可以是对象类型。
3.ref响应式原理是依赖于object.defineProperty()的get()和set()的
2.如果参数是对象类型时,其实最底层本质还是reactive,系统会自动根据我们给ref传入的值进行转换成reactive.
reactive
1.它的响应式是更加“深层次”的,底层本质是将传入的数据包装成一个Proxy。
2.参数必须是对象或者数组,如果要让对象某个元素实现响应式需要用的toRefs.
3.在template中访问,系统会自动添加.value;在js中需要手动.value。

二.Vue3带来了什么
1.更快的渲染速度:Vue3使用了Proxy代理对象,可以更快的跟踪数据变化,提高渲染速度。
2.更小的体积:Vue3比Vue2体积更小,同时也支持按需加载,减少页面加载时间。
3.更好的支持TypeScirpt:Vue3用ts重写,可以更好地进行类型检查和代码提示。
4.更好的组件封装,Vue3引用了Compsiton API,增加封装组件逻辑,十组件更加可复用可维护。
5.更好的响应式系统:Vue3的响应式系统进行了重构,更好地处理嵌套对象和数组的变化,同时也提供了更多的API来处理响应式的数据。

三.composition API 优势好处特点
1.为什么要选择组合式API?
由于vue2的局限性:
组件逻辑膨胀导致组件的可读性变差;
无法跨组件复用代码;
Vue2对ts的支持有限制
2.组合式API解决了什么问题?优点?
在逻辑组织和逻辑复用方面,Composition API是优于Options API。
因为Composition API几乎都是函数,会有更好的类型推断。
Composition AP对tree-shaking友好,代码也更容易压缩
Composition API中见不到this的使用,减少this指向不明的情况

四.provide与inject
1.用于在父组件提供数据,然后子组件注入数据。
2.provide是一个对象,或者是一个返回对象的函数,里面就包含给子孙后代的属性和属性值。
3.inject是一个字符串数组,或者一个对象,属性值可以是一个对象,包含from和default默认值。
五.vue2和vue3生命周期
在这里插入图片描述

六.

七. 谈谈Pinia的理解?
Pinia是vue官方团队成员专门开发的一个全新状态管理库,并且Vuex官方仓库中也介绍说可以把Pinia当成不同名称的Vuex 5版本。
优点:
更加轻量级,压缩后提交只有1.6kb。
完整的TS的支持,Pinia源码完全有TS编码完成。
移除了mutations,剩下state、actions、getters。
无需手动添加每个store它的模块默认情况下创建就自动注册。
支持服务器渲染SSR
支持 Vue DevTools.

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值