真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

vue生命周期有哪些

這篇文章將為大家詳細(xì)講解有關(guān)vue生命周期有哪些,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

創(chuàng)新互聯(lián)主營(yíng)新會(huì)網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,重慶App定制開(kāi)發(fā),新會(huì)h5小程序開(kāi)發(fā)搭建,新會(huì)網(wǎng)站營(yíng)銷推廣歡迎新會(huì)等地區(qū)企業(yè)咨詢

周期呢?

  1. 根實(shí)例的加載相關(guān)的生命周期(beforeCreate、created、beforeMount、mounted)

  2. 組件實(shí)例的加載相關(guān)的生命周期(beforeCreate、created、beforeMount、mounted)

  3. 全局路由勾子(router.beforeEach)

  4. 組件路由勾子(beforeRouteEnter)

  5. 組件路由勾子的next里的回調(diào)(beforeRouteEnter)

  6. 指令的周期(bind,inserted)

  7. nextTick方法的回調(diào)

接下來(lái),讓我們用vue-cli簡(jiǎn)單改造后的項(xiàng)目,做一個(gè)測(cè)試,看看各個(gè)聲明周期的觸發(fā)順序是怎樣的

main.js:

router.beforeEach((to, from, next) => {
 console.log('路由全局勾子:beforeEach')
 next()
})
 
router.afterEach((to, from) => {
 console.log('路由全局勾子:afterEach')
})
 
new Vue({
 beforeCreate () {
  console.log('根組件:beforeCreate')
 },
 created () {
  console.log('根組件:created')
 },
 beforeMount () {
  console.log('根組件:beforeMount')
 },
 mounted () {
  console.log('根組件:mounted')
 }
 el: '#app',
 router,
 template: '',
 components: { App }
})

test.vue


接下來(lái),直接進(jìn)入test.vue對(duì)應(yīng)的路由。在控制臺(tái),我們看到如下的輸出

vue生命周期有哪些

我們看到執(zhí)行的順序?yàn)?/p>

  1. 路由勾子 (beforeEach、beforeRouteEnter、afterEach)

  2. 根組件 (beforeCreate、created、beforeMount)

  3. 組件 (beforeCreate、created、beforeMount)

  4. 指令 (bind、inserted)

  5. 組件 mounted

  6. 根組件 mounted

  7. beforeRouteEnter的next的回調(diào)

  8. nextTick

結(jié)論

路由勾子執(zhí)行周期非常早,甚至在根實(shí)例的渲染之前

具體的順序 router.beforeEach > beforeRouteEnter > router.afterEach

tip:在進(jìn)行路由攔截的時(shí)候要避免使用實(shí)例內(nèi)部的方法或?qū)傩浴?br/>在開(kāi)發(fā)項(xiàng)目時(shí)候,我們腦門(mén)一拍把,具體攔截的程序,寫(xiě)在了根實(shí)例的方法上了,到beforeEach去調(diào)用。
結(jié)果導(dǎo)致整個(gè)攔截的周期,推遲到實(shí)例渲染的之后。
因此對(duì)于一些路由組件的beforeRouteEnter里的請(qǐng)求并無(wú)法攔截,頁(yè)面看上去好像已經(jīng)攔截下來(lái)了。
實(shí)際上請(qǐng)求依然發(fā)了出去,beforeRouteEnter內(nèi)的函數(shù)依然執(zhí)行了。

指令的綁定在組件mounted之前,組件的beforeMount之后
不得不提的, beforeRouteEnter的next勾子

beforeRouteEnter的執(zhí)行順序是如此靠前,而其中next的回調(diào)勾子的函數(shù),執(zhí)行則非??亢?,在mounted之后??!
我們通常是在beforeRouteEnter中加載一些首屏用數(shù)據(jù),待數(shù)據(jù)收到后,再調(diào)用next勾子,通過(guò)回調(diào)的參數(shù)vm將數(shù)據(jù)綁定到實(shí)例上。
因此,請(qǐng)注意next的勾子是非常靠后的。

nextTick
越早注冊(cè)的nextTick觸發(fā)越早

關(guān)于vue生命周期有哪些就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。


新聞標(biāo)題:vue生命周期有哪些
地址分享:http://weahome.cn/article/jsesss.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部