首页 > 其他分享 >前端学习-vue视频学习010-生命周期

前端学习-vue视频学习010-生命周期

时间:2024-03-21 22:45:47浏览次数:22  
标签:学习 vue console log 销毁 -- 010 完毕 挂载

尚硅谷视频教程

组件的生命周期

  • 创建
  • 挂载
  • 更新
  • 销毁

在特定的时期调用特定的函数,即生命周期

vue2的生命周期

4个周期,对应8个钩子(生命周期函数)

  • 创建:创建前、创建完毕
  • 挂载:挂载前、挂载完毕
  • 更新:更新前、更新完毕
  • 销毁:销毁前、销毁完毕
<script>

export default {
  // eslint-disable-next-line
  name: 'Person',
  data(){
    return {
        sum:1
    }
  },
  methods:{
    changeSum(){
        this.sum += 1
    }
  },

  beforeCreate(){
    console.log('创建前');
  },
  created(){
    console.log('创建完毕');
  },
  beforeMount(){
    console.log('挂载前');
  },
  mounted(){
    console.log('挂载完毕');
  },
  beforeUpdate(){
    console.log('更新前');
  },
  updated(){
    console.log('更新完毕');
  },
  beforeDestroy(){
    console.log('销毁前');
  },
  destroyed(){
    console.log('销毁完毕');
  },
}
</script>

创建、挂载仅产生一次
更新可多次
销毁:当不使用该组件时,组件销毁

如何销毁组件

<template>
  <Person v-if="flag"/>
</template>

<script>
// import { Person } from './components/Person.vue'


export default {
  name: 'App',
  components:{
    Person: ()=> import ('./components/Person.vue')
  },
  data(){
    return{
      flag:false
    }
  }
}
</script>

vue2的生命周期

4个周期,对应6个钩子(生命周期函数)

  • 创建:集成在setup中
  • 挂载:挂载前、挂载完毕
  • 更新:更新前、更新完毕
  • 卸载:卸载前、卸载完毕

<script lang="ts" setup name="Person">
    import {ref,onBeforeMount,onMounted,onBeforeUpdate,onUpdated,onBeforeUnmount,onUnmounted} from 'vue'

    let sum = ref(0)
    function changeSum() {
        sum.value += 1
    }
    // vue3中创建集成在setup里
    console.log('子--创建');
    onBeforeMount(()=>{
        console.log('子--挂载前');
    })
    onMounted(()=>{
        console.log('子--挂载完毕');
    })
    onBeforeUpdate(()=>{
        console.log('子--更新前');
    })
    onUpdated(()=>{
        console.log('子--更新完毕');
    })
    onBeforeUnmount(()=>{
        console.log('子--卸载前');
    })
    onUnmounted(()=>{
        console.log('子--卸载完毕');
    })
</script>

根组件最后才挂载

标签:学习,vue,console,log,销毁,--,010,完毕,挂载
From: https://www.cnblogs.com/ayubene/p/18081741

相关文章

  • 前端学习-html
    1基础知识1.1BS架构和CS架构CS架构是客户端/服务器,需要安装客户端,例如手机app,PC应用BS架构是浏览器/服务器,适合功能简单的开发1.2浏览器内核浏览器内核渲染前端页面(将前端代码展示出来)1.3推荐网站https://developer.mozilla.org/zh-CN/2HTML标签2.1分类(1)按照结构......
  • 学习路线与博客地图
    编程语言编程语言是连接人与计算机的桥梁,掌握一门或多门编程语言都是必不可少的技能C/C++/RustC#JavaPythonGoPHPMarkdown语法计算机科学计算机科学是探索计算机内部世界与应用的学问,有助于提升编程能力,更深入地理解计算机系统设计和优化计算机基础知识(CS101)......
  • vue入门小案例(表单收集单页面)
    实例在Vue中创建一个表单收集页面,可以使用v-model来实现双向数据绑定,以便收集和处理用户输入的数据。以下是一个简单的示例,包含文本输入、选择框和单选按钮的表单页面<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"conten......
  • 机器学习模型——线性回归
    一元线性回归基本概念:线性回归是利用数理统计中回归分析来确定两种或两种以上变量之间相互依赖的定量关系的一种统计分析方法。如果回归分析中,只包括一个自变量和一个因变量,且二者的关系可用一条直线近似表示,这种回归分析称为一元线性回归分析。如果回归分析中包括两个或两......
  • vue入门小案例(编写一个可编辑的表格)
    案例:要在Vue中创建一个可编辑的表格,你可以使用Vue的双向数据绑定功能。以下是一个简单的示例。首先,确保你已经在项目中引入了Vue。接下来,创建一个HTML文件,并在其中添加以下代码:<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewpor......
  • 基于Spring Boot+Vue的学生选课系统
    末尾获取源码作者介绍:大家好,我是墨韵,本人4年开发经验,专注定制项目开发更多项目:CSDN主页YAML墨韵学如逆水行舟,不进则退。学习如赶路,不能慢一步。目录一、项目简二、开发技术与环境配置2.1SpringBoot框架2.2Java语言简介2.3Vue的介绍2.4mysql数据库介绍2.5B/S架......
  • 基于Spring Boot+Vue的社区医院管理系统
    末尾获取源码作者介绍:大家好,我是墨韵,本人4年开发经验,专注定制项目开发更多项目:CSDN主页YAML墨韵学如逆水行舟,不进则退。学习如赶路,不能慢一步。目录一、项目简介一、研究背景二、研究意义二、开发技术与环境配置2.1SpringBoot框架2.2Java语言简介2.3Vue的介绍2......
  • vue一些基础概念,核心理念,框架和库的区别,MVC和MVVM的区别,展示数据的几种方法、v-bind、
    1、什么是vue,核心理念,为什么学习vue1(单页面应用程序)用于构建用户界面的渐进式框架,采用自底向上增量开发的设计2数据驱动视图,组件化开发3轻量级框架、简单易学、虚拟的DOM、数据视图结构分离下面展示一些内联代码片。下面是vue的代码框架分为三部分:1.引入vue.js;2......
  • C#系统学习
    C#基础学习1.Net概念 ---->.Net平台 ---->.NetFrameWork框架 ---->类库 ---->CLR(CommonLanguageRuntime)公共语言运行时2、编程语言:c#(#其实是Sharp的表示) 3、.Net平台的两种交互模式 C/S:客户端/服务器要求用户的电脑上必须要安装一个客户端(桌面应用程序) ---......
  • 【性能测试】移动测试md知识总结第2篇:主流移动端自动化测试工具,学习目标【附代码文档
    移动测试完整教程(附代码资料)主要内容讲述:移动端测试课程介绍,移动端测试知识概览学习主要内容,学习目标,学习目标,1.window安装andorid模拟器。主流移动端自动化测试工具,Appium环境搭建学习目标,学习目标,学习目标,1.Appium背景介绍。app元素信息操作,元素事件操作学习目标,学习......