<div id="app">
<p>{{ message }}</p>
<p><button @click="increment">increment</button></p>
</div>
<button onclick="vm.$destroy()">销毁</button>
<script>
var vm=new Vue({
el:"#app",
data:{
message:1
},
methods:{
increment:function () {
this.message ++;
}
},
//10个生命周期 常用4 6 9 10
beforeCreate:function () {
console.log("1-beforeCreate 初始化之后");
},
created:function () {
console.log("2-created 创建完成");
},
beforeMount:function () {
console.log("3-beforeMount 挂载之前");
},
mounted:function () { //常用
console.log("4-mounted 被创建");
},
beforeUpdate:function () {
console.log("5-beforeUpdate 数据更新前");
},
updated:function () { //常用
console.log("6-updated 被更新后");
},
//<keep-alive></keep-alive>
activated:function () {
console.log("7-activated");
},
deactivated:function () {
console.log("8-deactivated");
},
beforeDestroy:function () { //常用
console.log("9-beforeDestroy 销毁之前");
},
destroyed:function () { //常用
console.log("10-destroyed 销毁之后");
}
})
</script>
//进入页面,console的输出:
1-beforeCreate 初始化之后
2-created 创建完成
3-beforeMount 挂载之前
4-mounted 被创建
//点击一次 increment按钮
5-beforeUpdate 数据更新前
6-updated 被更新后
//再点击一次 increment按钮
5-beforeUpdate 数据更新前
6-updated 被更新后
//点击销毁按钮
9-beforeDestroy 销毁之前
10-destroyed 销毁之后

本文详细介绍了Vue.js的应用实例,展示了从初始化到销毁的各个生命周期钩子的调用过程及应用场景。通过具体的代码示例,解释了如何利用这些钩子进行有效的状态管理和组件更新。
1604

被折叠的 条评论
为什么被折叠?



