<body> <div id="app"> <input type="button" value="更新数据" @click="update" /> <input type="button" value="销毁组件" @click="destroy" /> {{ msg }} </div> </body> <script src="vue.js"></script> <script type="text/javascript"> var vm = new Vue({ el: '#app', data:{ msg: 'Vue2.x 生命周期' }, methods: { update(){ this.msg = '点击了数据更新吧' }, destroy(){ this.$destroy();//销毁组件 } }, beforeCreate() { console.log('vue刚刚被建立');//尚未属性和方法 }, created() { console.log('vue实例已经建立完成');//属性和方法已经绑定成功,DOM尚未生成 }, beforeMount() { console.log('模板编译以前'); }, mounted() { console.log('模板已经编译完成');//相似以前的ready,就是模板引擎数据有没有展现 }, beforeUpdate() { console.log('组件更新以前'); }, updated() { console.log('组件更新完毕'); }, beforeDestroy() { console.log('组件销毁以前'); }, destroyed() { console.log('组件销毁以后');//组件销毁以后,更新数据就无效了 } }); </script>
页面效果如图:javascript