- 1.v-show 和 v-if 区别
- 答:v-show是设置display为true或false,在使用比较多的情况下毕v-if节省性能,
- v-if 操作dom渲染,刚开始比较节省性能,用的多的话比较浪费,v-if也可以结合判断条件来使用.
- 2.v-for 中key的作用
- 答:有id用id,没id用索引,是提高性能的,避免数据混乱
- 3.vue中data为什么是function
-
因为vue中内部使用的组件没有使用new Vue这种实例化的形式,不是创建一个新的实例,所以 data数据需要进行区分,函数每次执行之间没有任何关系,所以使用函数来返回data数据,这样每次使用这个组件,组件的数据都只是这次的,下次再使用,下次数据跟这次的数据没有关系就不会相互影响了
- 4.vue中双向绑定的原理
- v-model mvvm m是model 是数据 v是视图view vm 是viewmodel vue是响应式框架,修改view可改变数据的更新,同时更新model数据,也可以改变视图view的变化.
- 5.keep-alive的作⽤和被keep-alive声明的组件的⽣命周期
- keep-alive的作用就是提高用户体验,避免dom重新渲染,节省性能,减少加载时间,在组件切换过程中将状态保存到内存中.
- 6.说一下vue的生命周期,以及生命周期都做了什么事情?
- beforeCreate :创建一个空白的实例,data method 未初始化,不可使用
- created:Vue 实例初始化完成,完成响应式绑定,data method 可以调用,模板尚未渲染
- beforemount:编译模板,调用render 生成vdom,只是在js层面,未转化成DOM
- mounted:完成dom 渲染,组件创建完成,创建阶段进入运行阶段
- beforeUpdate:data发生变化,准备更新dom(尚未更新)
- updated: data 发生变化,且DOM更新完成,再这里更新数据可能会死循环
- beforeUnmount:组件进入销毁阶段,解除全局事件 自定义事件
- unmounted:组件被销毁
- 7.vue什么时候操作DOM 比较合适?操作时发现有的组件获取不到,怎么办?
- mounted 中可以访问操作 DOM。
- mounted 不能保证所有子组件被挂载,因此需要使用$nexttick
- 8.发送网络请求在哪个函数中?
- created
- 9.vue组件间传值有哪些⽅式
- 父子 子向父 组件与组件之间传值
- 10.vue中改变数组内索引的值,数据不更新,如何处理
- 通过$set方法来设置数组的值,这个方法有三个参数,第一个是要被设置值的目标对象,第二个是设置值在数组中的索引,第三个是设置的值
- 11.讲一下vuex
- mutation 修改state中的数据 state存放数据, actions 用于异步操作
Vue 基础面试题
于 2022-04-27 20:35:26 首次发布