Vue?中生命周期定義及流程
一、生命周期定義
生命周期:又名:生命周期回調函數、生命周期函數、生命周期鉤子
生命周期是什么:Vue在關鍵時刻幫我們調用的一些特殊名稱的函數 3.生命周期函數的名字不可更改,但函數的具體內容是程序員根據需求編寫的 4.生命周期函數中的 this 指向是 vm 或組件實例對象
做一個小例子,要求頁面的文字一上來透明度就周而復始的從1變到0
<div id="root">
<h2 :style="{opacity: opacity}">好好學習</h2>
<h2 :style="{opacity}">天天向上</h2>
</div><script type="text/javascript">
Vue.config.productionTip = false
//創(chuàng)建vue實例
new Vue({
el: "#root",
data: {
opacity: 1
},//Vue完成模板解析,并把初始的真實dom放入頁面后(掛載完畢)調用mounted
mounted(){
setInterval(()=>{
this.opacity -= 0.01
if(this.opacity <=0) this.opacity = 1
},20)
}
})
</script>
二、生命周期流程


<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Vue初識</title>
<script type="text/javascript" src="./js/vue.js"></script>
</head>
<body>
<div id="root">
<h2 :style="{opacity}">天天向上</h2>
<button @click="opacity = 1">透明度設置為1</button>
<button @click="stop">點我停止變換</button>
</div>
<script type="text/javascript">
Vue.config.productionTip = false
//創(chuàng)建vue實例
new Vue({
el: "#root",
data: {
opacity: 1
},
methods:{
stop(){
this.$destroy()
}
},
mounted(){
this.timer = setInterval(()=>{
this.opacity -= 0.01
if(this.opacity <=0) this.opacity = 1
},20)
},
beforeDestroy(){
console.log("beforeDestroy")
clearInterval(this.timer)
}
})
</script>
</body>
</html>
三、總結
vm的一生(vm的生命周期):
- 將要創(chuàng)建------>調用
beforeCreate函數 - 創(chuàng)建完畢------>調用
created豳數 - 將要掛載------>調用
beforeMount函數 - 掛載完畢------>調用
mounted函數【重要的鉤子】 - 將要更新------>調用
beforeUpdate函數 - 更新完畢------>調用
updated函數。 - 將要銷毀------>調用
beforeDestroy函數【重要的鉤子】 - 銷毀完畢------>調用
destroyed函數
常用的生命周期鉤子:
- 1.
mounted:發(fā)送ajax請求、啟動定時器、綁定自定義事件、訂閱消息等【初始化操作】 - 2.
beforeDestroy:清除定時器、解綁自定義事件、取消訂閱消息等【收尾工作】
關于銷毀Vue實例:
- 1、銷毀后借助Vue開發(fā)者工具看不到任何信息
- 2、銷毀后自定義事件會失效,但原生DOM事件依然有效
- 3、一般不會在
beforeDestroy操作數據,因為即便操作數據,也不會再觸發(fā)更新流程了
到此這篇關于Vue 中生命周期定義及流程的文章就介紹到這了,更多相關Vue 生命周期內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
vue+d3js+fastapi實現天氣柱狀圖折線圖餅圖的示例
本文主要介紹了vue+d3js+fastapi實現天氣柱狀圖折線圖餅圖的示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2025-04-04
express+vue+mongodb+session 實現注冊登錄功能
這篇文章主要介紹了express+vue+mongodb+session 實現注冊登錄,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2018-12-12
關于Elementui中toggleRowSelection()方法實現分頁切換時記錄之前選中的狀態(tài)
這篇文章主要介紹了關于Elementui中toggleRowSelection()方法實現分頁切換時記錄之前選中的狀態(tài),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-03-03

