前端学习-vue视频学习010-生命周期
组件的生命周期
- 创建
- 挂载
- 更新
- 销毁
在特定的时期调用特定的函数,即生命周期
vue2的生命周期
4个周期,对应8个钩子(生命周期函数)
- 创建:创建前、创建完毕
- 挂载:挂载前、挂载完毕
- 更新:更新前、更新完毕
- 销毁:销毁前、销毁完毕
<script>
export default {
// eslint-disable-next-line
name: 'Person',
data(){
return {
sum:1
}
},
methods:{
changeSum(){
this.sum += 1
}
},
beforeCreate(){
console.log('创建前');
},
created(){
console.log('创建完毕');
},
beforeMount(){
console.log('挂载前');
},
mounted(){
console.log('挂载完毕');
},
beforeUpdate(){
console.log('更新前');
},
updated(){
console.log('更新完毕');
},
beforeDestroy(){
console.log('销毁前');
},
destroyed(){
console.log('销毁完毕');
},
}
</script>
创建、挂载仅产生一次
更新可多次
销毁:当不使用该组件时,组件销毁
如何销毁组件
<template>
<Person v-if="flag"/>
</template>
<script>
// import { Person } from './components/Person.vue'
export default {
name: 'App',
components:{
Person: ()=> import ('./components/Person.vue')
},
data(){
return{
flag:false
}
}
}
</script>
vue2的生命周期
4个周期,对应6个钩子(生命周期函数)
- 创建:集成在setup中
- 挂载:挂载前、挂载完毕
- 更新:更新前、更新完毕
- 卸载:卸载前、卸载完毕
<script lang="ts" setup name="Person">
import {ref,onBeforeMount,onMounted,onBeforeUpdate,onUpdated,onBeforeUnmount,onUnmounted} from 'vue'
let sum = ref(0)
function changeSum() {
sum.value += 1
}
// vue3中创建集成在setup里
console.log('子--创建');
onBeforeMount(()=>{
console.log('子--挂载前');
})
onMounted(()=>{
console.log('子--挂载完毕');
})
onBeforeUpdate(()=>{
console.log('子--更新前');
})
onUpdated(()=>{
console.log('子--更新完毕');
})
onBeforeUnmount(()=>{
console.log('子--卸载前');
})
onUnmounted(()=>{
console.log('子--卸载完毕');
})
</script>
根组件最后才挂载
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!