Vue 中生命周期定义及流程

 更新时间:2022年05月27日 14:27:51   作者:​ 奔跑吧鸡翅   ​  
这篇文章主要介绍了Vue中生命周期定义及流程,生命周期又被称为生命周期回调函数、生命周期函数或生命周期钩子,下文关于其更多有趣的介绍需要的小伙伴可以参考一下文章详细内容

一、生命周期定义

生命周期:又名:生命周期回调函数、生命周期函数、生命周期钩子

生命周期是什么:Vue在关键时刻帮我们调用的一些特殊名称的函数 3.生命周期函数的名字不可更改,但函数的具体内容是程序员根据需求编写的 4.生命周期函数中的 this 指向是 vm 或组件实例对象

做一个小例子,要求页面的文字一上来透明度就周而复始的从1变到0

<div id="root">
    <h2 :style="{opacity: opacity}">好好学习</h2>
    <h2 :style="{opacity}">天天向上</h2>
</div>
<script type="text/javascript">
    Vue.config.productionTip = false
    //创建vue实例
    new Vue({
        el: "#root",
        data: {
            opacity: 1
        },//Vue完成模板解析,并把初始的真实dom放入页面后(挂载完毕)调用mounted
        mounted(){
            setInterval(()=>{
                this.opacity -= 0.01
                if(this.opacity <=0) this.opacity = 1
            },20)
        }
    })
</script>

二、生命周期流程

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Vue初识</title>
    <script type="text/javascript" src="./js/vue.js"></script>
</head>
<body>
<div id="root">
    <h2 :style="{opacity}">天天向上</h2>
    <button @click="opacity = 1">透明度设置为1</button>
    <button @click="stop">点我停止变换</button>
</div>
<script type="text/javascript">
    Vue.config.productionTip = false
    //创建vue实例
    new Vue({
        el: "#root",
        data: {
            opacity: 1
        },
        methods:{
          stop(){
              this.$destroy()
          }
        },
        mounted(){
            this.timer = setInterval(()=>{
                this.opacity -= 0.01
                if(this.opacity <=0) this.opacity = 1
            },20)
        },
        beforeDestroy(){
            console.log("beforeDestroy")
            clearInterval(this.timer)
        }
    })
</script>
</body>
</html>

三、总结

vm的一生(vm的生命周期):

  • 将要创建------>调用beforeCreate函数
  • 创建完毕------>调用created豳数
  • 将要挂载------>调用beforeMount函数
  • 挂载完毕------>调用mounted函数【重要的钩子】
  • 将要更新------>调用beforeUpdate函数
  • 更新完毕------>调用updated函数。
  • 将要销毁------>调用beforeDestroy函数【重要的钩子】
  • 销毁完毕------>调用destroyed函数

常用的生命周期钩子:

  • 1.mounted:发送ajax请求、启动定时器、绑定自定义事件、订阅消息等【初始化操作】
  • 2.beforeDestroy:清除定时器、解绑自定义事件、取消订阅消息等【收尾工作】

关于销毁Vue实例:

  • 1、销毁后借助Vue开发者工具看不到任何信息
  • 2、销毁后自定义事件会失效,但原生DOM事件依然有效
  • 3、一般不会在beforeDestroy操作数据,因为即便操作数据,也不会再触发更新流程了

到此这篇关于Vue 中生命周期定义及流程的文章就介绍到这了,更多相关Vue 生命周期内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue3实现无缝滚动组件的示例代码

    vue3实现无缝滚动组件的示例代码

    在日常开发中,经常遇到需要支持列表循环滚动展示,特别是在数据化大屏开发中,所以小编今天为大家介绍一下如何利用vue3实现一个无缝滚动组件吧
    2023-09-09
  • .netcore+vue 实现压缩文件下载功能

    .netcore+vue 实现压缩文件下载功能

    这篇文章主要介绍了.netcore+vue 实现压缩文件下载功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • vue+d3js+fastapi实现天气柱状图折线图饼图的示例

    vue+d3js+fastapi实现天气柱状图折线图饼图的示例

    本文主要介绍了vue+d3js+fastapi实现天气柱状图折线图饼图的示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-04-04
  • 解决vue同一slot在组件中渲染多次的问题

    解决vue同一slot在组件中渲染多次的问题

    今天小编就为大家分享一篇解决vue同一slot在组件中渲染多次的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • express+vue+mongodb+session 实现注册登录功能

    express+vue+mongodb+session 实现注册登录功能

    这篇文章主要介绍了express+vue+mongodb+session 实现注册登录,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-12-12
  • 详解如何实现一个简单的 vuex

    详解如何实现一个简单的 vuex

    本篇文章主要介绍了如何实现一个简单的 vuex,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • Vue 实现输入框新增搜索历史记录功能

    Vue 实现输入框新增搜索历史记录功能

    这篇文章主要介绍了Vue 输入框新增搜索历史记录功能,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-10-10
  • 在Vue中使用Echarts可视化库的完整步骤记录

    在Vue中使用Echarts可视化库的完整步骤记录

    这篇文章主要给大家介绍了关于在Vue中使用Echarts可视化库的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • vue实现元素拖动并互换位置的实现代码

    vue实现元素拖动并互换位置的实现代码

    在使用Vue的场景下,需要实现对元素进行拖动交换位置,接下来通过本文给大家介绍vue实现元素拖动并互换位置的实现代码,需要的朋友可以参考下
    2023-09-09
  • 关于Elementui中toggleRowSelection()方法实现分页切换时记录之前选中的状态

    关于Elementui中toggleRowSelection()方法实现分页切换时记录之前选中的状态

    这篇文章主要介绍了关于Elementui中toggleRowSelection()方法实现分页切换时记录之前选中的状态,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03

最新评论