vue框架常问面试题

103 阅读2分钟

--- highlight: a11y-dark theme: fancy

1.vue生命周期总共分为哪几个阶段

答:vue实例从创建到销毁的过程就是生命周期,也就是从开始创建=>初始化数据=>编译模板=>挂载DOM,渲染=>更新,渲染=>卸载等过程就称之为生命周期

1,beforeCreate

在实例初始化之后,数据观测和事件配置之前被调用

2,created

在实例创建完成后立即被调用,在这一步,实例已完成数据观测属性和方法的运算,事件回调,挂载还未开始

3,beforeMount

在挂载之前被调用,相关的render函数首次被调用

4,mounted

el被新创建的vm,el给替代并挂载到实例上去之后调用的钩子函数如果root实例上挂载一个文档内元素,当mounted被调用时vmel给替代并挂载到实例上去之后调用的钩子函数如果root实例上挂载一个文档内元素,当mounted被调用时vm。el也在文档内

5,beforeUpdate

数据更新时调用,发生在虚拟DOM打补丁之前这里适合在更新之前访问现有的DOM,比如手动移除已添加的事件监听器

6,updated

由于数据更改导致虚拟DOM从新渲染和打补丁,在这之后会调用该钩子

7activated

keep-alive组件激活时调用,该钩子在服务器端渲染期间不会调用

8,deactivated

keep-alive组件停用时调用,该钩子在服务器端渲染期间不会调用

9,beforeDestroy

实例销毁之前被调用,在这一步实例仍然可用,该钩子在服务器渲染期间不会被调用

10,destroyed

vue实例销毁之后调用,调用后,vue实例指示的所有东西都会解除绑定所有的事件监听器都会被移除,所有的子实例也都会被销毁,该钩子在服务器端渲染期间不会被调用

2,第一次加载页面会触发那几个钩子函数

当页面加载时会触发,beforeCreate, created, beforeMount, mounted

3,说一下vue常用的几个修饰符

.prevent:提交事件不在从载页面, .stop:阻止单击事件冒泡, self:当事件发生在该元素而不是子元素时触发, capture:事件监听,事件发生的是哦后触发

4,什么是$nexttick

nexttick它可以在dom更新后延迟执行,dom更新后使用nexttick可以获取到更新后的dom

5,localStorage与sesstionStorage与cookies之间差异

localStorage里面的数据一直存在除非手动删除 存储大小可达到5Mb 存储在本地 cookies是只要到了一定的时间里面的数据就会自动删除 大小一般不超过4kb 数据是存到本地终端 经过加密 sesstionStorage只要关闭页面里面的数据就会被删除 存储大小可达到5Mb 存储在本地