javascript - 請問一下組件的生命周期beforeDestory是在什么情況下面觸發(fā)的呢?
問題描述
進(jìn)行路由跳轉(zhuǎn)的時候能觸發(fā)嗎?我發(fā)現(xiàn)我進(jìn)行路由跳轉(zhuǎn)的時候沒有觸發(fā)beforeDestory里面的函數(shù),但是有段代碼需要在組件銷毀之前執(zhí)行,請問我應(yīng)該怎么做呢?https://jsfiddle.net/44w37p34/ 剛剛有個朋友給我發(fā)了一個demo,我發(fā)現(xiàn)他的beforeDestory在路由跳轉(zhuǎn)的時候觸發(fā)了,但是我的一直都不行,請問是什么原因呢
問題解答
回答1:找到原因了,之前給router-view加了個keep-alive導(dǎo)致組件緩存了,所以不會觸發(fā)beforeDestory和destoryed
回答2:我試了一下,切換路由的時候能觸發(fā)執(zhí)行beforeDestroy方法,示例如下。
const Home = {template: ` <p> <p class='section'>Some section foo</p> <p class='section'>Some section foo</p> <p class='section'>Some section foo</p> <p class='section'>Some section foo</p> </p> `,mounted() { console.log('Home mounted');},beforeDestroy() { console.log('Home destroy');} }; const Test = {template: ` <p> <p class='section'>Some section test</p> <p class='section'>Some section test</p> <p class='section'>Some section test</p> <p class='section'>Some section test</p> </p> `,mounted() { console.log('Test mounted');},beforeDestroy() { console.log('Test destroy');} };
相關(guān)文章:
1. javascript - 百度echarts series數(shù)據(jù)更新問題2. javascript - JS設(shè)置Video視頻對象的currentTime時出現(xiàn)了問題,IE,Edge,火狐,都可以設(shè)置,反而chrom卻...3. php自學(xué)從哪里開始?4. MySQL客戶端吃掉了SQL注解?5. css3 - [CSS] 動畫效果 3D翻轉(zhuǎn)bug6. python小白的基礎(chǔ)問題 關(guān)于while循環(huán)的嵌套7. java固定鍵值轉(zhuǎn)換,使用枚舉實(shí)現(xiàn)字典?8. 求大神幫我看看是哪里寫錯了 感謝細(xì)心解答9. phpstady在win10上運(yùn)行10. java - 我設(shè)置了cookie的max age,但是cookie依然在關(guān)閉游覽器后消失了
