Vue生命周期你真的理解了吗?(必会面试题)

简介: Vue生命周期你真的理解了吗?(必会面试题)

🔥1.1Vue生命周期都有哪些?

🔥生命周期 执行时机
🔥beforeCreate 在组件实例被创建之初、组件的属性⽣效之前被调用
🔥created 在组件实例已创建完毕。此时属性也已绑定,但真实DOM还未⽣成,$el 还不可⽤
🔥beforeMount 在组件挂载开始之前被调⽤。相关的 render 函数⾸次被调⽤
🔥mounted 在 el 被新建的 vm.$el 替换并挂载到实例上之后被调用
🔥beforeUpdate 在组件数据更新之前调⽤。发⽣在虚拟 DOM 打补丁之前
🔥 update 在组件数据更新之后被调用
🔥 activited 在组件被激活时调⽤(使用了 <keep-alive> 的情况下)
🔥 deactivated 在组件被销毁时调⽤(使用了 <keep-alive> 的情况下)
🔥 beforeDestory 在组件销毁前调⽤
🔥 destoryed 在组件销毁后调⽤


代码详情

class Vue{
  constructor( options ){
    options.beforeCreate.call(this)
    this.$data = options.data;
    options.created.call(this)
    options.beforeMount.call(this)
    this.$el = document.querySelector(options.el);
    options.mounted.call(this)
  }
}
new Vue({
  el:"#app",
  data : {
    str:'123'
  },
  beforeCreate(){
    console.log('beforeCreate',this.$el , this.$data)
  },
  created(){
    console.log('created',this.$el , this.$data)
  },
  beforeMount(){
    console.log('beforeMount',this.$el , this.$data)
  },
  mounted(){
    console.log('mounted',this.$el , this.$data)
  },
})


🔥1.2 一旦进入组件或者一旦进入页面,会执行哪些生命周期?

  1. beforeCreate
  2. created
  3. beforeMount
  4. mounted


🔥1.3 如果使用了keep-alive会多出来俩个生命周期

  1. activated
  2. deactivated


🔥1.4 如果使用了keep-alive第一次进入组件会执行5个生命周期

  1. beforeCreate
  2. created
  3. beforeMount
  4. mounted
  5. activated


🔥1.5 如果使用了keep-alive第二次或者第N次,每次都会执行一个生命周期

activated


🔥1.6 父子组件嵌套执行生命周期的顺序

🔥挂载阶段


  1. beforeCreate
  2. created
  3. beforeMount
  1. beforeCreate
  2. created
  3. beforeMount
  4. mounted
  1. mounted


🔥更新阶段

  1. beforeUpdate
  1. eforeUpdate
  2. updated
  1. updated


🔥销毁阶段

  1. beforeDestroy
  1. beforeDestroy
  2. destroyed
  1. destroyed








目录
相关文章
|
5月前
|
JavaScript 前端开发 应用服务中间件
【Vue面试题三十】、vue项目本地开发完成后部署到服务器后报404是什么原因呢?
这篇文章分析了Vue项目在服务器部署后出现404错误的原因,主要是由于history路由模式下服务器缺少对单页应用的支持,并提供了通过修改nginx配置使用`try_files`指令重定向所有请求到`index.html`的解决方案。
【Vue面试题三十】、vue项目本地开发完成后部署到服务器后报404是什么原因呢?
|
5月前
|
JavaScript 前端开发
【Vue面试题二十五】、你了解axios的原理吗?有看过它的源码吗?
这篇文章主要讨论了axios的使用、原理以及源码分析。 文章中首先回顾了axios的基本用法,包括发送请求、请求拦截器和响应拦截器的使用,以及如何取消请求。接着,作者实现了一个简易版的axios,包括构造函数、请求方法、拦截器的实现等。最后,文章对axios的源码进行了分析,包括目录结构、核心文件axios.js的内容,以及axios实例化过程中的配置合并、拦截器的使用等。
【Vue面试题二十五】、你了解axios的原理吗?有看过它的源码吗?
|
5月前
|
JavaScript 前端开发 数据处理
【Vue面试题二十八】、vue要做权限管理该怎么做?如果控制到按钮级别的权限怎么做?
这篇文章讨论了Vue中实现权限管理的策略,包括接口权限、路由权限、菜单权限和按钮权限的控制方法,并提供了不同的实现方案及代码示例,以确保用户只能访问被授权的资源。
【Vue面试题二十八】、vue要做权限管理该怎么做?如果控制到按钮级别的权限怎么做?
|
2月前
|
监控 JavaScript 前端开发
vue学习第十二章(生命周期)
欢迎来到我的博客,我是瑞雨溪,一名热爱JavaScript和Vue的大一学生。本文深入探讨了Vue实例的生命周期,从初始化到销毁各阶段的关键钩子函数及其应用场景,帮助你更好地理解Vue的工作原理。如果你觉得有帮助,欢迎关注我,将持续分享更多优质内容!🎉🎉🎉
37 1
vue学习第十二章(生命周期)
|
5月前
|
JavaScript 开发者
[译] 监听第三方 Vue 组件的生命周期钩子
[译] 监听第三方 Vue 组件的生命周期钩子
|
5月前
|
JavaScript 前端开发
【Vue面试题二十七】、你了解axios的原理吗?有看过它的源码吗?
文章讨论了Vue项目目录结构的设计原则和实践,强调了项目结构清晰的重要性,提出了包括语义一致性、单一入口/出口、就近原则、公共文件的绝对路径引用等原则,并展示了单页面和多页面Vue项目的目录结构示例。
|
4月前
|
缓存 JavaScript 前端开发
vue面试题
vue面试题
174 64
|
3月前
|
JavaScript
Vue 的父组件和子组件生命周期钩子执行顺序
在 Vue 中,父组件和子组件的生命周期钩子执行顺序如下:
|
3月前
|
JavaScript
|
3月前
|
JavaScript
vue3 生命周期
【10月更文挑战第14天】vue3 生命周期

热门文章

最新文章

下一篇
开通oss服务