亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue如何實現返回上一頁面時回到原先滾動的位置

發布時間:2021-08-07 10:55:15 來源:億速云 閱讀:194 作者:小新 欄目:web開發

這篇文章主要為大家展示了“vue如何實現返回上一頁面時回到原先滾動的位置”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“vue如何實現返回上一頁面時回到原先滾動的位置”這篇文章吧。

項目結束,測試時發現在首頁商品列表中,向上滑動幾頁后點擊進入詳情,從詳情頁面返回商品列表時,頁面回到了最頂部,測試不通過說是用戶體驗不好,要求從哪里點擊進去返回該頁面時回到原先的滾動頁面。
思路:因為vue是單頁面應用,進入其他頁面時會銷毀該頁面,用keep-alive不讓其刷新,具體實現為:

(1).在App.vue中加入:

<template>
 <div id="app">
  <!--<router-view/>-->
  <!--頁面返回不刷新-->
  <keep-alive>
   <router-view v-if="$route.meta.keepAlive"></router-view>
  </keep-alive>
  <router-view v-if="!$route.meta.keepAlive"></router-view>
 </div>
</template>

(2).index.js頁面

export default new Router({
 routes: [{
  path: '/',
  name: 'index',
  component: index,
  meta: {
   keepAlive: true
  }
 },

這樣在index.vue中,mounted方發只走一次,在瀏覽器上實現了返回原來滾動位置的目的。但是在手機上測試,發現沒用,解決手機上實現目的的方法:

//在頁面離開時記錄滾動位置
beforeRouteLeave (to, from, next) {
  this.scrollTop = document.documentElement.scrollTop || document.body.scrollTop
  next()
 },
//進入該頁面時,用之前保存的滾動位置賦值
beforeRouteEnter (to, from, next) {
  next(vm => {
   document.body.scrollTop = vm.scrollTop
  })
 },

OK!實現!!

以上是“vue如何實現返回上一頁面時回到原先滾動的位置”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

vue
AI

桐城市| 高青县| 洮南市| 姜堰市| 莲花县| 武平县| 高碑店市| 伊金霍洛旗| 安泽县| 定结县| 莒南县| 太和县| 庆城县| 类乌齐县| 昭平县| 荣昌县| 于田县| 阿荣旗| 九龙坡区| 阿克| 遂宁市| 泾源县| 牙克石市| 民县| 合川市| 开平市| 崇阳县| 西畴县| 防城港市| 梁河县| 茶陵县| 太湖县| 阿鲁科尔沁旗| 永顺县| 仙居县| 沈阳市| 台北县| 广东省| 梅河口市| 江口县| 绥化市|