提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
vue2.0面试题
1、 vue⽣命周期?
1.1 什么是vue⽣命周期?
生命周期函数 又叫钩子函数 是到了某一个时间点会自动触发
我们讨论的是 vue 实例的钩子函数 从 vue 实例创建到销毁的过程中 到了一定的时间节点就会触发
1.2 vue⽣命周期都有哪些钩⼦函数?这些钩⼦函数如何触发?
创建阶段
- beforeCreate
实例创建之前 这个时候什么都没有 data methods 都不能用 也没有 this - created
创建之后 也是最早的可以使用 data 和 methods 的钩子函数 这个时候有 this 了 - beforeMount
组件挂载之前 - mounted
组件挂载之后
这个时候能拿到 dom 节点使用
运行阶段 只要修改 data 就会触发 - beforeUpdate
数据变了 视图还没变 - updated
数据变了 视图也变了
销毁阶段 - beforeDestory
组件销毁之前 是最后一个能使用 data 和 methods 的钩子函数 - destoryed
组件销毁之后
除了这八个 还有 三个
如果用 keep-alive 缓存了组件 就会有 actived deactived 这两个钩子函数
activated 组件激活
deactivated 组件停用
errorCaptured 子组件出错的时候会触发这个钩子函数
1.3 项⽬开发过程中,在⽣命周期⾥⾯都分别做过什么功能?
我在写效果的过程中 会在 created 或者 mounted 中发送 http 请求
created 和 mounted 的区别 就是 created 比 mounted 执行的时间更早所以会更多的在 created 中请求
mounted 的特点是可以操作 dom 节点
还会用 created 钩子函数 获取 本地存储的数据
1.4 ⻚⾯第⼀次加载时⽗⼦组件⽣命周期执⾏的顺序是什么?
页面—beforeCreate
页面—created
页面—beforeMount
组件—beforeCreate
组件—created
组件—beforeMount
组件—mounted
页面—mounted
2、vuex的理解
2.1 什么是vuex?使⽤vuex能够解决什么问题?
vuex 是 vue 的状态管理工具 管理项目中的公共数据 能够在所有的组件中使用
2.2 vuex的五⼤核⼼是什么?
state 存放公共数据的地方
mutations 修改 state 的地方 只有这里能修改
getters 相当于是之前的计算属性
actions 执行异步操作的地方
modules 模块化
2.3 在组件⾥⾯如何调⽤五⼤核⼼的属性和⽅法?
state 通过 this. s t o r e . s t a t e . x x x 调 用 m u t a t i o n s 通 过 t h i s . store.state.xxx调用 mutations 通过this. store.state.xx