在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML5  Java  HTML/ Vue的SPA應用怎么保存前一個頁面的緩存?

Vue的SPA應用怎么保存前一個頁面的緩存?

比如我從A->B->C->D頁面,則路徑上的A,B,C頁面都被緩存了,這樣當D返回的時候能直接顯示前面界面的內(nèi)容,而不是重新獲取數(shù)據(jù)。但是當所有內(nèi)容被返回以后,則A,B,C的緩存全部被釋放。我知道原生的APP能通過多開頁面的方式做到,但是Vue的主流是單頁面應用,雖然有個keep-alive標簽,能配合vue-router執(zhí)行緩存操作,但是怎么去銷毀緩存呢?
同時vue為了提高組件的復用性,在組件創(chuàng)建以后如果是同一組件跳轉,該組件是不會被銷毀的,這時候該怎么辦?比如客戶進入了某品牌的A產(chǎn)品詳情頁,然后下面有該品牌的B產(chǎn)品推薦,用戶如果點擊的話,而他們的路由都是/product/:id,只不過A是/product/A,而B是/product/B,這時候組件并沒有被銷毀,也就無法執(zhí)行Mounted生命函數(shù),我只有想到內(nèi)容通過watch來更新,但是這樣緩存也就無法生效了,那這又該怎么處理呢?

回答
編輯回答
臭榴蓮

第一個問題:怎樣銷毀緩存,官網(wǎng)也說了,用keep-alive的時候,配合activated使用,需要銷毀緩存的時候,把數(shù)據(jù)清空(數(shù)據(jù)驅動沒毛病吧).
第二個問題:詳情頁里面的相關推薦點擊會再次進入詳情頁,只是id變了,頁面沒變,此時beforeRouteUpdate這個鉤子會觸發(fā)。個人用這個鉤子是因為:點相關推薦切換的時候會閃動上次sku的內(nèi)容,而且很久。

2017年9月13日 05:37