鍍金池/ 問答/HTML/ vue項目中l(wèi)ocaltion.href打開的頁面怎么能被router緩存?

vue項目中l(wèi)ocaltion.href打開的頁面怎么能被router緩存?

項目是一個H5頁面,嵌套在小程序之中

A 頁面為一個滾動底部加載的列表

B 頁面為一個詳情頁

A頁面點擊某一項目時,通過 location.href = '/b' 跳轉(zhuǎn)至 B 頁面
(因為小程序使用轉(zhuǎn)發(fā)功能時,只能用 location.href 跳轉(zhuǎn), 才能獲取到分享內(nèi)容)

到現(xiàn)在沒有什么問題。
下面有一個需求是,B 頁面點擊返回按鈕,返回至 A 頁面之前瀏覽的位置。那么就遇到問題了,B 頁面使用 router.back(-1),跳轉(zhuǎn)至 A 頁面是重新進(jìn)行請求, keep-alive 也沒用。請問這種情況怎么能讀取 A 頁面的緩存。

回答
編輯回答
不二心

思路是在跳轉(zhuǎn)詳情頁面之前先前端存儲 A頁面 的頁數(shù)以及滾動高度這些信息,等從詳情頁返回的時候使用js的方式滾動到原先瀏覽的位置。

提供一個幫助鏈接:詳情頁回退列表頁如何記錄用戶瀏覽位置并更新局部視圖

2017年11月27日 08:45