当前位置:网站首页 > Vue.js开发 > 正文

vue生命周期钩子函数使用场景(3.vue生命周期钩子函数有哪些?)



昨天做项目时,由于自己对Vue的生命周期钩子函数了解的不是很到位,以至于出现了很多问题,所以便在闲暇之余写下这篇博客,加深一下对钩子函数的认知。

初看这幅图,可能觉得这Tm是什么啊,能不能说的直白点!!!(淦),但习惯就好,这就是官方。但稍微学习一下之后,可以发现这是很简单的~

vue提供了多个生命周期函数供我们使用,分别为beforeCreate, created, beforeMount, mounted, beforeUpdate, updated, activated, deactivated, beforeDestroy, destroyed

beforeCreate(创建前)

  • 类型:
  • 详细: 在实例初始化之后,但又未完全创建之前,执行它时,data和methods中的数据都还未初始化
  • 使用场景:可以在此时加一些loading效果,在created时进行移除

created(创建后)

  • 类型:
  • 详细: 实例创建完成后被立即调用,此阶段完成了数据的观测,property 和方法的运算,watch/event 事件回调,但$el还没有被挂载到页面中。
  • 使用场景: 一般可以在此时发送一些网络请求,获取数据

beforeMounted(挂载前)

  • 类型:
  • 详细: 模板在内存中已经编译好了,但是并没有渲染到页面中。页面显示的还仅仅是模板字符串,此时DOM为虚拟DOM,还是无法操作

mounted(挂载后)

  • 类型:
  • 详细: el挂载到实例上后调用,DOM 加载完成,页面渲染完毕
  • 使用场景:一般我们的第一个业务逻辑会在这里开始,当需要操作DOM的时候执行,可以配合$nextTick 使用进行单一事件对数据的更新后更新DOM

beforeUpdate(更新前)

  • 类型:
  • 详细: 执行它时,data中的数据已经被更新了,但是页面中的data还未被替换过来
  • 使用场景:适合在更新之前访问现有的 DOM,比如手动移除已添加的事件监听器。

updated(更新后)

  • 类型:
  • 详细: 数据更新完成,且页面发生改变
  • 使用场景: 当数据更新需要做统一业务处理的时候使用,(我在页面使用better-scroll滑动时使用过,由于页面内容没有被完全加载出来,所以内容的scrollHeight不够,导致页面滚动不了.所以就在此时使用该钩子函数,在里面进行页面的刷新,完美解决问题)

activated(激活时)

  • 类型:
  • 详细: 被 keep-alive 缓存的组件激活时调用。
  • 使用场景:

deactivated(未被激活)

  • 类型:
  • 详细: 被 keep-alive 缓存的组件停用时调用。

beforeDestroy(实例销毁前)

  • 类型:
  • 详细: 实例销毁之前调用 , 实例仍然完全可用。
  • 使用场景: 主要解绑一些使用addEventListener监听的事件等

destroyed(实例被销毁后)

  • 类型:
  • 详细:实例销毁后调用。该钩子被调用后,对应 Vue 实例的所有指令都被解绑,所有的事件监听器被移除,所有的子实例也都被销毁。
  • 使用场景: 加点儿提示toast之类的东西

任无名F vue生命周期钩子函数的正确使用方式

我叫陈小皮。vue 生命周期 应用场景 概述

古城的风cllvue中的生命周期函数都在什么时候执行?

vue官网

到此这篇vue生命周期钩子函数使用场景(3.vue生命周期钩子函数有哪些?)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • ubuntu镜像文件可以删除吗(ubuntu16.04镜像文件)2026-05-09 15:27:06
  • redhat 重置root密码(redhat6.9重置root密码)2026-05-09 15:27:06
  • pcie5.0(pcie5.0电源有什么用)2026-05-09 15:27:06
  • 数组方法some和every的区别(js数组every方法)2026-05-09 15:27:06
  • vue2升级3(vue2升级vite)2026-05-09 15:27:06
  • vue3.0路由守卫(vue的路由守卫有什么应用场景)2026-05-09 15:27:06
  • jsj是哪个明星(jsj是哪个明星名字缩写)2026-05-09 15:27:06
  • ubuntu官方源地址(ubuntu18.04源地址)2026-05-09 15:27:06
  • redhat enterprise 5(redhat enterprise 5.4安装盘)2026-05-09 15:27:06
  • swagger2是什么(swagger 2.0)2026-05-09 15:27:06
  • 全屏图片