Vue生命周期详解——图示&代码

生命周期图示

Vue生命周期详解——图示&代码

生命周期实例代码

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>生命周期</title>
    </head>
    <body>
        <div id="app">{{a}}</div>
        <script src="../Vue.js"></script>
        <script>
            var vm = new Vue({
                el:'#app',
                data:{
                    a:1
                },
                beforeCreate:function(){
                    console.log("beforeCreated "+"el:"+this.$el+" data:"+this.$data+" a:"+this.a);
                },
                created:function(){
                    console.log("created "+"el:"+this.$el+" data:"+this.$data+" a:"+this.a);
                },
                beforeMount:function(){
                    console.log("beforeMount "+"el:"+this.$el+" data:"+this.$data+" a:"+this.a);
                },
                mounted:function(){
                    console.log("mounted "+"el:"+this.$el+" data:"+this.$data+" a:"+this.a);
                },
                beforeUpdate:function(){
                    console.log("beforeUpdate "+"el:"+this.$el+" data:"+this.$data+" a:"+this.a);
                },
                updated:function(){
                    console.log("updated "+"el:"+this.$el+" data:"+this.$data+" a:"+this.a);
                },
                beforeDestroy:function(){
                    console.log("beforeDestroy "+"el:"+this.$el+" data:"+this.$data+" a:"+this.a);
                },
                destroyed:function(){
                    console.log("destroyed "+"el:"+this.$el+" data:"+this.$data+" a:"+this.a);
                }
            })
            vm.$data.a = 2018;
            setTimeout(function(){
                vm.$data.a = 2019;
            },3000)
            //vm.$destroy();
            setTimeout(function(){
                vm.$destroy()
            },3000);
        </script>
    </body>
</html>

执行结果

Vue生命周期详解——图示&代码