当前位置: 首页 > news >正文

VUE 页面生命周期基本知识点

在 Vue.js 中,页面生命周期(更准确地说是组件生命周期)指的是组件从创建到销毁的一系列过程。了解这些生命周期钩子可以帮助我们更好地管理组件的状态和行为。以下是 Vue 组件的主要生命周期钩子:

  1. beforeCreate

    • 在实例初始化之后,数据观测 (data observer) 和 event/watcher 事件配置之前被调用。
    • 此时组件的选项对象还未被创建,eldata 都不存在。
  2. created

    • 在实例创建完成后被立即调用。在这一步,实例已完成以下的配置:数据观测 (data observer),属性和方法的运算,以及 watch/event 事件回调。然而,挂载阶段还没开始,$el 属性目前不可见。
    • 在这个阶段,可以访问组件的 datacomputed 属性,以及调用 methods 方法,但 DOM 还未挂载,因此无法访问 $elvm.$el
  3. beforeMount

    • 在挂载开始之前被调用:相关的 render 函数首次被调用。
    • 在这个阶段,虚拟 DOM 已经创建,但还未挂载到真实 DOM,可以访问 this.$el(它是一个空的虚拟节点),但内容尚未渲染到页面上。
  4. mounted

    • el 被新创建的 vm.$el 替换,并挂载到实例上去之后调用该钩子。如果 root 实例挂载了一个在内联模板中渲染的元素,当 mounted 被调用时 vm.$el 也在文档内。
    • 此时组件已经渲染到页面上,可以访问 DOM,执行依赖于 DOM 的操作。
  5. beforeUpdate

    • 数据更新时调用,发生在虚拟 DOM 打补丁之前。
    • 在这个阶段,data 中的数据是最新的,但虚拟 DOM 还未更新,所以页面还未渲染最新的数据。
  6. updated

    • 由于数据更改导致的虚拟 DOM 重新渲染和打补丁,在这之后会调用该钩子。
    • 在这个阶段,虚拟 DOM 已经更新,并且页面也已经渲染最新的数据。但要注意避免在这个钩子中执行过多的操作,因为它可能会引发额外的渲染。
  7. beforeDestroy

    • 实例销毁之前调用。在这一步,实例仍然完全可用。
    • 在这个阶段,组件实例仍然有效,但即将被销毁。你可以在这个钩子中执行一些清理操作,如清除定时器、解绑全局事件、销毁插件对象等。
  8. destroyed

    • Vue 实例销毁后调用。调用后,Vue 实例指示的所有东西都会解绑,所有的事件监听器会被移除,所有的子实例也都会被销毁。
    • 此时组件已被完全销毁,无法再访问组件实例或 DOM 元素。

需要注意的是,在 Vue 3 中,新增了一个 setup 钩子,它是 beforeCreatecreated 之间的生命周期钩子,用于在组件创建之前设置响应式状态和执行副作用(例如,设置侦听器或计算属性)。但是,由于 setup 是在 beforeCreatecreated 钩子之前调用的,因此在 setup 中无法访问 this。同时,Vue 3 也提供了 Composition API,它提供了一种更灵活的方式来组织和重用逻辑代码。

http://www.lryc.cn/news/352395.html

相关文章:

  • windows查看mysql的版本(三种方法)
  • Redis批量删除指定前缀的key
  • 机器学习实验------Adaboost算法
  • 点云处理中阶 Octree模块
  • Nginx实现负载均衡与故障检查自动切换
  • 2024年学浪视频怎么下载到手机相册
  • 【北京市政府网_注册安全分析报告】
  • 工作中的冲突,职场人士应如何化解
  • 企业级大数据平台建设方案
  • HTML语义化标签:为何它们如此重要?
  • 详细介绍一下Votenet的工作原理及流程
  • 使用Autofit.js和React实现自适应布局
  • Kafka之【存储消息】
  • 鸿蒙开发配置官方地图
  • 《天道》丁元英格律诗商业案例完整拆解(上)
  • 2024年山东省安全员C证证模拟考试题库及山东省安全员C证理论考试试题
  • 微软开源多模态大模型Phi-3-vision,微调实战来了
  • 架构二。。
  • 《Google 软件工程》读书笔记
  • 研发机构大数据迁移如何保障敏感数据不泄露
  • 【Spring Security系列】权限之旅:SpringSecurity小程序登录深度探索
  • ​​​【收录 Hello 算法】第 10 章 搜索
  • 【MySQL精通之路】SQL优化(1)-查询优化(11)-多范围查询优化
  • Mysql之基本架构
  • Python学习---基于正则表达式的简单爬取电影下载信息案例
  • .DS_store文件
  • 【webrtc】内置opus解码器的移植
  • Java注解:讲解Java注解(Annotations)的概念,使用,并展示如何自定义注解,甚至框架级别的使用说明
  • 二维矩阵乘法案例
  • selenium安装出错