vue的面试题

90 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第25天,点击查看活动详情

1、计算属性和watcher的使用区别:

1.computed用来监控自己定义的变量,该变量不在data里面声明,直接在computed里面定义,然后就可以在页面上进行双向数据绑定展示出结果或者用作其他处理;(定义变量的位置在computed)

2.watch主要用于监控vue实例的变化,它监控的变量当然必须在data里面声明才可以,它可以监控一个变量,也可以是一个对象,一般用于监控路由、input输入框的值特殊处理等等,它比较适合的场景是一个数据影响多个数据,它不具有缓存性

3.watch:监测的是属性值, 只要属性值发生变化,其都会触发执行回调函数来执行一系列操作

(监听的是属性值,属性值改变其会触发执行的回调函数来进行一系列操作)

4.computed:监测的是依赖值,依赖值不变的情况下其会直接读取缓存进行复用,变化的情况下才会重新计算。(具有缓存的特性,依赖值不变的情况复用,具有缓存的特性)

5.计算属性不能执行异步任务,计算属性必须同步执行

2、v-if和v-show的区别:

v-if 是动态添加,当值为 false 时,是完全移除该元素,即 dom 树中不存在该元素。

v-show 仅是隐藏 / 显示,值为 false 时,该元素依旧存在于 dom 树中。若其原有样式设置了 display: none 则会导致其无法正常显示。

3、key的作用:

key的作用主要是为了高效的更新虚拟DOM,其原理是vue在patch过程中通过key可以精准判断两个节点是否是同一个,从而避免频繁更新不同元素,减少DOM操作量,提高性能。

4、vue2中vue.use是怎么用的

安装插件,如果插件是一个对象,则必须要提供一个install方法。 如果插件是个函数,它会被作为install方法。 调用install方法时, 会将Vue作为参数传入; install方法被同一个插件调用多次时, 插件也只会被安装一次

5、vue2中$nextTick:

dom加载完后执行的延迟回调,在修改数据后立即使用这个方法,获取更新后的dom,异步操作,微任务