【Vue复习】Vue面试题收记录

Vue面试题收记录

Vue系列感觉如果直接用笔记来复习很抽象,于是想到了通过对常见面试题的一个收录和分析来复习。

Vue中的路由拦截是怎么做的?

在全局前置函数中通过to和next参数,参照当前用户权限对路由重定向

1.Vue3与Vue2相比较,有哪些变化

组合式API、setup()、生命周期destoyed被unmounted替换 、teleport、双向绑定的优化、reactive和ref 、diff优化、Vue对象的重任卸给了app对象,并且减轻了对象压力删除了不常用的一些api

Vue3不兼容IE8的原因:Vue3中大量使用了ES6的语法,比如响应式处理改用Proxy,通过Reflect读写代理对象属性,通过Set收集视图依赖,Map建立代理对象属性与Set依赖的映射关系

2.在Vue中修改数据后,视图没有更新,是什么原因

数据更新视图没更新,这说明是vue并未检测到属性的改变,如果是对象那么可能是直接新增或者是删除了属性,或者是数组,或者数据不是响应式的,vue不能检测数组直接通过索引修改数组项

那是vue的域更新是异步的,因为即当setter操作发生后,并不会立马更新,指令的更新操作会有延迟,当指令更新真正执行的时候,此时修改的属性属性已经设置,所以指令更新模板时得到的是新值。

3.$nextTick在什么场景使用,实现原理

Vue中的DOM是异步更新的,当数据已经获取到最新的时候想要获取最新的DOM就需要用nextTick

this.$nextTick(cb) 当数据更新时,dom渲染后会自动执行callback函数(为了取得最新的dom)

需要在视图更新之后,基于新的视图进行操作。

this. n e x t T i c k ( ) 方 法 主 要 是 用 在 数 据 改 变 , d o m 改 变 应 用 场 景 中 。 v u e 中 数 据 和 d o m 渲 染 由 于 是 异 步 的 , 所 以 , ∗ ∗ 要 让 d o m 结 构 随 数 据 改 变 这 样 的 操 作 都 应 该 放 进 t h i s . nextTick()方法主要是用在数据改变,dom改变应用场景中。vue中数据和dom渲染由于是异步的,所以,**要让dom结构随数据改变这样的操作都应该放进this. nextTick()domvued<

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值