vue的生命周期

lifecycle.png
<!DOCTYPE html>
<html>
<header>
<meta charset="utf-8"/>
<title></title>
<script src="./vue.js"></script>
</header>
<body>
<div id="app">
    <button @click="message='下班'">修改data</button>
    <h3 id="h3">{{message}}</h3>
</div>
<script>
    var vm = new Vue({
        el:"#app",
        data:{
            message:"我是message",
        },
        methods:{
            show:function(){
                console.log("this is show function")
            }
        },
        beforeCreate(){//這是遇到的第一個(gè)生命周期函數(shù),表示實(shí)例完全被創(chuàng)建之前可以執(zhí)行它
            //console.log(this.message);
            ///console.log(this.show());
            //注意:在beforeCreate生命周期函數(shù)執(zhí)行的時(shí)候data和methods都還沒被初始化
        },
        created(){//這是遇到的第二個(gè)生命周期函數(shù)
            console.log(this.message);
            console.log(this.show());
            //在created中data和methods都已經(jīng)初始化了
            //如果要執(zhí)行methods中的方法,或者操作data中的數(shù)據(jù),最早只能在created中操作
        },
        beforeMount(){//這是遇到的第三個(gè)周期函數(shù),表示模板已經(jīng)編譯完成,但是尚未把模板渲染到頁(yè)面上
          console.log(document.getElementById("h3").innerText)
        //在beforeMount執(zhí)行的時(shí)候,頁(yè)面中的元素還沒有被替換過來,還是之前的
        },
        mounted(){//這是遇到的第四個(gè)生命周期函數(shù),內(nèi)存中的模板已經(jīng)渲染到頁(yè)面上,頁(yè)面已經(jīng)被渲染好了 ,mounted是實(shí)例創(chuàng)建期間的
            //的最后一個(gè)函數(shù),當(dāng)執(zhí)行完mounted函數(shù),表示實(shí)例已經(jīng)完全創(chuàng)建好了,此時(shí),如果沒有其他操作的話,這個(gè)實(shí)例就靜靜的躺在內(nèi)存中,一動(dòng)不動(dòng)
        },
        //接下來的是運(yùn)行中的兩個(gè)事件
        beforeUpdate(){
            //這時(shí)候,表示我們的界面還沒有被更新[數(shù)據(jù)更新了嗎?更新了]
            //console.log('界面上的元素內(nèi)容'+document.getElementById('h3').innerText);
            //console.log("data數(shù)據(jù)"+this.message)
            //結(jié)論:當(dāng)執(zhí)行beforeUpdate時(shí),頁(yè)面上的數(shù)據(jù)還是舊的,此時(shí)data數(shù)據(jù)是最新的,兩者尚未同步
        },
        updated(){
            console.log('界面上的元素內(nèi)容:'+document.getElementById('h3').innerText);
            console.log("data數(shù)據(jù):"+this.message)
            //updated執(zhí)行時(shí),頁(yè)面和data的數(shù)據(jù)都已經(jīng)是最新的了
        }

    })
  </script>
</body>
</html>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容