vue面试题总结【不定时更新】

之前写在自己的笔记里,现在再写到文章里当是一个复习吧,愿可共勉。

1.vue的生命周期【生命周期的钩子】

传送门(官网详解)
参考答案(2.0+):
beforCreate、created、beforeMount、mounted、beforeUpdate、updated、beforDestroy、destroyed、errorCaptured【2.5.0+新增】

_ _ _ 拓展分界线 _ _ _
首次加载会触发:beforeCreate、created、beforeMount、mounted
数据发生变化会触发:beforeUpload、updated
每个版本的生命周期
vue1.0生命周期:init、created、beforeCompile、compiled、ready、beforeDestroy、distroyed
vue2.0生命周期:beforeCreate、created、beforMount、mounted、beforUpdate、updated、beforeDistroy、distroyed
vue3.0生命周期传送门】:setup、onBeforeMount、onMounted、onBeforeUpdate、onUpdated、onBeforeunmount、onUnmounted、onErrorCaptured

2.vue全家桶包含哪些?

传送门
参考答案:
vue-cli(vue脚手架)、vueRouter(路由管理器)、vuex(状态管理)、Axios(请求)
搭配的UI框架有
移动端:Mint UI、vant、vux
pc端:elementUI、iview

3.vue双向绑定原理

传送门1 传送门2
参考答案:
model转成view通过数据绑定,view转成Model通过事件绑定

  • object.defineProprrty,观察者模式、set触发更新、get获取数据
  • 事件绑定,value的一个语法糖

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

传送门
参考答案:
相同点:都是可以动态控制dom的元素显示与隐藏;
不同点: v-if根据表达式的值生成或者移除一个元素;而v-show根据表达式的值显示和隐藏元素,即控制display显示隐藏;
具体分析如下
手段:v-if是添加或删除元素,而v-show是通过样式属性控制显隐;
编译过程:v-if切换有一个局部的编译/卸载的过程,切换过程中合适地销毁和重建内部的时间监听和子组件,而v-show只是简单的基于css的切换;
性能消耗:v-if有更高的切换消耗,而v-show有更高的初始值渲染消耗
使用场景:v-if适用于条件不大可能的改变,而v-show适合频繁切换,比方说,限制的显示隐藏适合用v-if,而多栏展开详情适合v-show。

你可能感兴趣的:(共勉,vue,面试)