2021-04-11

vue面试

响应原理


* created:实例已经创建完成,因为他是最早触发的,所以可以进行一些数据、资源的请求。

* mounted:实例已经挂载完成,可以进行一些DOM操作。

* beforeUpdate:可以在这个钩子中进一步的更改状态,不会触发重渲染。

* updated:可以执行依赖于DOM的操作,但是要避免更改状态,可能会导致更新无线循环。

* destroyed:可以执行一些优化操作,清空计时器,解除绑定事件。

ajax放在哪个生命周期?:一般放在 mounted 中,保证逻辑统一性,因为生命周期是同步执行的, ajax 是异步执行的。单数服务端渲染 ssr 同一放在 created 中,因为服务端渲染不支持 mounted 方法。 什么时候使用beforeDestroy?:当前页面使用 $on ,需要解绑事件。清楚定时器。解除事件绑定, scroll mousemove 。

父子组件生命周期调用顺序

渲染顺序:先父后子,完成顺序:先子后父

更新顺序:父更新导致子更新,子更新完成后父

销毁顺序:先父后子,完成顺序:先子后父

v-for和v-if为什么不能连用

v-for 会比 v-if 的优先级更高,连用的话会把 v-if 的每个元素都添加一下,造成性能问题。

项目谈论

学到了什么

为什么选择这个

Situation:事情是在什么情况下发生,基于一个怎样的背景;

* Task:你是如何明确你的任务的;

* Action:针对这样的情况分析,你采用了什么行动方式,具体做了哪些工作内容;

* Result:结果怎样,带来了什么价值,在整个过程中你学到了什么,有什么新的体会。

你可能感兴趣的:(2021-04-11)