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

『VUE』31. 生命周期的应用(详细图文注释)

目录

    • 在合适的时间进行操作
    • 取dom元素
    • 利用生命周期模拟网络数据发送
      • 代码示例
    • 总结


欢迎关注 『VUE』 专栏,持续更新中
欢迎关注 『VUE』 专栏,持续更新中

在合适的时间进行操作

假设网页一颗果树,我们要取dom(果实),一定要在渲染完成后才能取(果实)

通常是在组件挂载完毕mounted()(果子成熟了)取较为合适.


取dom元素

beforeMount()挂载之前,underfind
mounted()挂载完毕,才能拿到dom

app.vue

<template><h3>生命周期</h3><p ref="msg">{{ message }}</p><button @click="updatedData">修改数据</button>
</template><script>
export default {data() {return {message: "qwer",};},methods: {updatedData() {this.message = this.message + "asdf";},},beforeCreate() {console.log("创建之前~");},created() {console.log("创建完毕");},beforeMount() {console.log("挂载之前");console.log(this.$refs.msg); //underfind},mounted() {console.log("挂载完毕");console.log(this.$refs.msg);},beforeUpdate() {console.log("更新之前");},updated() {console.log("更新完毕");},beforeUnmount() {console.log("销毁之前");},unmounted() {console.log("销毁完毕");},
};
</script>

利用生命周期模拟网络数据发送

一个常用的应用是我们接收到一组json数据,然后在前端可视化,在我们挂载完毕的生命周期后进行渲染.所以通过在挂载完毕后加入数据的方式,模拟网络数据发送到网页的过程.

data数据初始化是在create之后的,表示数据初始化完毕,所以我们created()中赋值数据,实际开发中不是赋值是从某些接口获取.
在这里插入图片描述

  created() {console.log("创建完毕");this.banner = [{title: "mzh",content: "wg191",},{title: "ljc",content: "wg191",},{title: "ltl",content: "wg191",},];},

但是你也可以放在mounted()表示结构已经渲染完成,一般来说结构更重要,类似京东的下拉刷新商品,可以看到结构是已经有了的,但是数据是稍后出现的.

代码示例

<template><h3>生命周期</h3><p ref="msg">{{ message }}</p><button @click="updatedData">修改数据</button><ul><li v-for="(item, index) of banner" :key="index"><h3>{{ item.title }}</h3><h3>{{ item.content }}</h3></li></ul>
</template><script>
export default {data() {return {message: "qwer",banner: [],};},methods: {updatedData() {this.message = this.message + "asdf";},},beforeCreate() {console.log("创建之前~");},created() {console.log("创建完毕");},beforeMount() {console.log("挂载之前");console.log(this.$refs.msg); //underfind},mounted() {console.log("挂载完毕");console.log(this.$refs.msg);this.banner = [{title: "mzh",content: "wg191",},{title: "ljc",content: "wg191",},{title: "ltl",content: "wg191",},];},beforeUpdate() {console.log("更新之前");},updated() {console.log("更新完毕");},beforeUnmount() {console.log("销毁之前");},unmounted() {console.log("销毁完毕");},
};
</script>

总结

大家喜欢的话,给个👍,点个关注!给大家分享更多计算机专业学生的求学之路!

版权声明:

发现你走远了@mzh原创作品,转载必须标注原文链接

Copyright 2024 mzh

Crated:2024-3-1

欢迎关注 『VUE』 专栏,持续更新中
欢迎关注 『VUE』 专栏,持续更新中
『未完待续』


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

相关文章:

  • Mybatis框架之建造者模式 (Builder Pattern)
  • Java从入门到精通笔记篇(十三)
  • 嵌入式:STM32的启动(Startup)文件解析
  • ElasticSearch学习笔记四:基础操作(二)
  • ODA-em-application.log太大处理
  • 基于现金红包营销活动的开源 AI 智能名片与 S2B2C 商城小程序融合发展研究
  • 远程管理不再难!树莓派5安装Raspberry Pi OS并实现使用VNC异地连接
  • React中 setState 是同步的还是异步的?调和阶段 setState 干了什么?
  • 【D3.js in Action 3 精译_040】4.4 D3 弧形图的绘制方法
  • C++设计模式:抽象工厂模式(风格切换案例)
  • 搜维尔科技:Xsens随时随地捕捉,在任何环境下实时录制或捕捉
  • 爬虫基础总结 —— 附带爬取案例
  • 图像处理学习笔记-20241118
  • 不能打开网页,但能打开QQ、微信(三种方式)
  • 使用 start-local 脚本在本地运行 Elasticsearch
  • 计算机网络:概述知识点及习题练习
  • python蓝桥杯刷题2
  • 在openi平台 基于华为顶级深度计算平台 openmind 动手实践
  • KF UKF
  • 中伟视界:AI智能分析算法如何针对非煤矿山的特定需求,提供定制化的安全生产解决方案
  • Unity 编辑器下 Android 平台 Addressable 加载模型粉红色,类似材质丢失
  • Pytest-Bdd-Playwright 系列教程(10):配置功能文件路径 优化场景定义
  • rust逆向初探
  • 【Linux】apt 关闭 ssl 认证
  • 【算法】P5018 对称二叉树
  • Unifying Top-down and Bottom-up Scanpath Prediction Using Transformers
  • JavaSE(十四)——文件操作和IO
  • 【视觉SLAM】4b-特征点法估计相机运动之PnP 3D-2D
  • android 性能分析工具(04)Asan 内存检测工具
  • html中select标签的选项携带多个值