美文网首页
Vue.js中的生命周期钩子函数

Vue.js中的生命周期钩子函数

作者: 雪域狼王jayh | 来源:发表于2019-01-16 17:31 被阅读0次

这儿主要是为了介绍一下Vue.js的生命周期,读者可以类比成spring 甚至 java的生命周期

生命周期图解


生命周期.png

生命周期探究


下面是一段代码,对理解生命周期或许有点帮助

<!DOCTYPE html>
<html>
<head>
    <title></title>
    <script type="text/javascript" src="https://cdn.jsdelivr.net/vue/2.1.3/vue.js"></script>
</head>
<body>

<div id="app">
     <p>{{ message }}</p>
</div>

<script type="text/javascript">
    
  var app = new Vue({
      el: '#app',
      data: {
          message : "xuxiao is boy" 
      },
       beforeCreate: function () {
                console.group('beforeCreate 创建前状态===============》');
               console.log("%c%s", "color:red" , "el     : " + this.$el); //undefined
               console.log("%c%s", "color:red","data   : " + this.$data); //undefined 
               console.log("%c%s", "color:red","message: " + this.message)  
        },
        created: function () {
            console.group('created 创建完毕状态===============》');
            console.log("%c%s", "color:red","el     : " + this.$el); //undefined
               console.log("%c%s", "color:red","data   : " + this.$data); //已被初始化 
               console.log("%c%s", "color:red","message: " + this.message); //已被初始化
        },
        beforeMount: function () {
            console.group('beforeMount 挂载前状态===============》');
            console.log("%c%s", "color:red","el     : " + (this.$el)); //已被初始化
            console.log(this.$el);
               console.log("%c%s", "color:red","data   : " + this.$data); //已被初始化  
               console.log("%c%s", "color:red","message: " + this.message); //已被初始化  
        },
        mounted: function () {
            console.group('mounted 挂载结束状态===============》');
            console.log("%c%s", "color:red","el     : " + this.$el); //已被初始化
            console.log(this.$el);    
               console.log("%c%s", "color:red","data   : " + this.$data); //已被初始化
               console.log("%c%s", "color:red","message: " + this.message); //已被初始化 
        },
        beforeUpdate: function () {
            console.group('beforeUpdate 更新前状态===============》');
            console.log("%c%s", "color:red","el     : " + this.$el);
            console.log(this.$el);   
               console.log("%c%s", "color:red","data   : " + this.$data); 
               console.log("%c%s", "color:red","message: " + this.message); 
        },
        updated: function () {
            console.group('updated 更新完成状态===============》');
            console.log("%c%s", "color:red","el     : " + this.$el);
            console.log(this.$el); 
               console.log("%c%s", "color:red","data   : " + this.$data); 
               console.log("%c%s", "color:red","message: " + this.message); 
        },
        beforeDestroy: function () {
            console.group('beforeDestroy 销毁前状态===============》');
            console.log("%c%s", "color:red","el     : " + this.$el);
            console.log(this.$el);    
               console.log("%c%s", "color:red","data   : " + this.$data); 
               console.log("%c%s", "color:red","message: " + this.message); 
        },
        destroyed: function () {
            console.group('destroyed 销毁完成状态===============》');
            console.log("%c%s", "color:red","el     : " + this.$el);
            console.log(this.$el);  
               console.log("%c%s", "color:red","data   : " + this.$data); 
               console.log("%c%s", "color:red","message: " + this.message)
        }
    })
</script>
</body>
</html>

生命周期探究


生命周期钩子 对应的处理过程 使用方法
beforecreated el 和 data 并未初始化 eg: 可以在这加个loading事件
created 完成了 data 数据的初始化,el没有 在这发起后端请求,拿回数据,配合路由钩子做一些事情
beforeMount 完成了 el 和 data 初始化 在某组件删除之前的再次确认
mounted 完成挂载 当前组件已被删除,清空相关内容

参考文献

Vue2.0 探索之路——生命周期和钩子函数的一些理解

相关文章

  • vue学习日记——生命周期

    vue.js 中的生命周期包含三块:组件生命周期、路由生命周期、指令生命周期 。所谓生命周期就是由一系列钩子函数组...

  • 详细的分析 Vue生命周期

    Vue 的生命周期 生命周期执行的函数叫法有三种: 生命周期钩子 生命周期函数 钩子函数 生命周期钩子概念: 在v...

  • weex LifeCycle

    weex的生命周期钩子不多, 所有的生命周期钩子都可以写在 标签中的对应的函数中

  • vue 获取节点 获取事件

    vue 生命周期 什么是钩子函数 一开始就执行的 就是钩子函数 vue 钩子函数 也称作为生命周期 befor...

  • vue-resource

    然后在生命周期钩子函数中 效果如下

  • 生命周期的钩子函数

    生命周期的钩子函数

  • vue 上拉加载

    在Vue.js的钩子函数created里初始化加载数据,在钩子函数mounted中声明一个scroll事件监听,监...

  • VUE面试题

    Q1、Vue.js核心是什么? 数据驱动,组件化。 Q2、Vue生命周期钩子函数有哪些? created/befo...

  • vue生命周期默写

    钩子函数默写 生命周期

  • Vue生命周期-挂载流

    生命周期 又名生命周期钩子,生命周期回调函数,生命周期函数特定时间做特定的事,要把特定的事写特定的函数里函数中的t...

网友评论

      本文标题:Vue.js中的生命周期钩子函数

      本文链接:https://www.haomeiwen.com/subject/kbbmdqtx.html