vue面试题

89 阅读1分钟

1.v-show和v-if的区别

答:v-show是修改css属性display来让目标显示和隐藏; v-if是操作dom元素进行显示隐藏。

2.v-for中key的作用

答:对于v-for渲染的列表,进行增删改操作时,根据key的值判断某一项是否修改,如果修改,则重新渲染这一项,否则复用之前的元素,避免重新渲染整个列表。

3.vue中data为什么是function

答:如果data是对象,那么多个实例共享一个对象,一个组件改变data的值,其它均受影响;如果data是函数,那么多个实例的data的值不同,且修改其中一个不会影响其它的组件。

4.vue中双双向绑定的原理

答:Vue 数据双向绑定原理是通过 数据劫持 + 发布者-订阅者模式 的方式来实现的,首先是通过 ES5 提供的 Object.defineProperty() 方法来劫持(监听)各属性的 getter、setter,并在当监听的属性发生变动时通知订阅者,是否需要更新,若更新就会执行对应的更新函数。

后续待更新