Vue实例的生命周期
概念:从Vue实例的创建、运行、到销毁期间,总是伴随着各种各样的时间,这类事件统称为生命周期
生命周期钩子 = 生命周期函数 = 生命周期事件
生命周期函数分:
创建
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| <div id="app"> <h3 id="h">{{ msg }}</h3> </div> <script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script> <script type="text/javascript"> var vm = new Vue({ el:'#app', data:{ msg: 'ok' }, methods:{ show: function(){ console.log('show调用') } }, beforeCreate(){ }, created(){ this.show() }, beforeMount(){ console.log(document.getElementById('h').innerText)
}, mounted(){ console.log(document.getElementById('h').innerText) } }) </script>
|
如果要通过某些插件操作页面上的DOM节点,最早要在 mounted
中执行
只要执行完 mounted
,就表示整个Vue实例已经初始化完毕了。此时,组件已经脱离了创建阶段,进入到运行阶段
运行
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| <div id="app"> <h3 id="h">{{ msg }}</h3> <input type="button" name="" value="修改msg" @click="msg='no'"> </div> <script type="text/javascript"> var vm = new Vue({ el:'#app', data:{ msg: 'ok' }, methods:{ show: function(){ console.log('show调用') } } beforeUpdate(){ console.log('界面上元素的内容'+document.getElementById('h').innerText) console.log('data中的msg:'+this.msg)
}, updated(){ console.log('界面上元素的内容'+document.getElementById('h').innerText) console.log('data中的msg:'+this.msg) } }) </script>
|
销毁
演示:
点击这里查看页面