亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

vue 移動(dòng)端記錄頁(yè)面瀏覽位置的方法

 更新時(shí)間:2020年03月11日 08:37:53   作者:那年  
這篇文章主要介紹了vue 移動(dòng)端記錄頁(yè)面瀏覽位置的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

記錄一下本次項(xiàng)目我使用的方法,有更簡(jiǎn)單便捷的方法,歡迎交流

描述: 假設(shè)有a b c 頁(yè)面

  1. 從a頁(yè)面 到 b頁(yè)面 ,b頁(yè)面到c頁(yè)面
  2. b到c頁(yè)面的時(shí)候需要記錄當(dāng)前b的瀏覽位置,c返回到b的時(shí)候滾動(dòng)到上次瀏覽的位置
  3. b在返回a的時(shí)候,在從a進(jìn)入b 返回的是b的頂部(也就是不記錄瀏覽位置)

做法: 使用到了vuex ,beforeRouteLeave

1.首先在vuex中state定義一個(gè)變量來(lái)記錄當(dāng)前的瀏覽的位置

//state中定義數(shù)據(jù)
 state: {
  carrerTouScroll: {
   height: '' //滾動(dòng)的距離
   }
  }
 
 
 //mutations 操作state數(shù)據(jù)
 mutations: {
  setCarrerTouScroll (state, disdance) { //管理賽事 滾動(dòng)距離
   state.carrerTouScroll.height = disdance
  },
 }
 
 
 //使用getters 有的不加這句也可以,但是有時(shí)候不加就不行,所以還是加上吧
  getters: {
   getCarrerTou: state => state.carrerTouScroll 
   }

2.在需要的頁(yè)面中 我使用了beforeRouteLeave 來(lái)記錄沒(méi)有路由離開(kāi)的時(shí)候當(dāng)前瀏覽的位置

 beforeRouteLeave (to, from, next) { // 離開(kāi)路由前
  let that = this
  if (to.meta.touFlag) {
   let scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop
   this.$store.commit('setCarrerTouScroll', scrollTop)
  } else {
   this.$store.commit('setCarrerTouScroll', 0)
  }
  next()
 },

其中to.meta.touFlag 是我自己定義的,因?yàn)樾枰涗浀捻?yè)面很多,我覺(jué)的這樣比較方便,只需要在route 頁(yè)面加一個(gè)參數(shù)就好了

 {
  path: '/careerAddMainTeam',
  name: 'CareerAddMainTeam',
  component: CareerAddMainTeam,
  meta: {
   touFlag: true
  }
 },

當(dāng)然你也可以使用to.name ,如果需要跳轉(zhuǎn)頁(yè)面不多的話

 beforeRouteLeave (to, from, next) { // 離開(kāi)路由前
  let that = this
  if (to.name === 'CareerAddMainTeam') {
   let scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop
   this.$store.commit('setCarrerTouScroll', scrollTop)
  } else {
   this.$store.commit('setCarrerTouScroll', 0)
  }
  next()
 },

3.最后一步就是在每次b頁(yè)面獲取完數(shù)據(jù)的時(shí)候使用$nextTick,讓頁(yè)面恢復(fù)到上次瀏覽的位置

 this.$nextTick(() => {
      this.scrollTop = this.$store.state.carrerTouScroll.height
      document.documentElement.scrollTop = this.scrollTop
     })

一定要在b頁(yè)面獲取完數(shù)據(jù)后使用nextTick,不然是沒(méi)有效果的

這次就記錄到這,如果有別的好方法,請(qǐng)指出

到此這篇關(guān)于vue 移動(dòng)端記錄頁(yè)面瀏覽位置的方法的文章就介紹到這了,更多相關(guān)vue 移動(dòng)端頁(yè)面瀏覽位置內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue插件實(shí)現(xiàn)v-model功能

    vue插件實(shí)現(xiàn)v-model功能

    最近在開(kāi)發(fā)自己的富文本編輯器插件,在開(kāi)發(fā)中遇到了很多問(wèn)題其中我覺(jué)得比較好的問(wèn)題就是在你定義的插件中實(shí)現(xiàn)雙向綁定。這篇文章主要介紹了vue插件實(shí)現(xiàn)v-model功能,需要的朋友可以參考下
    2018-09-09
  • Vue+Element-U實(shí)現(xiàn)分頁(yè)顯示效果

    Vue+Element-U實(shí)現(xiàn)分頁(yè)顯示效果

    這篇文章主要為大家詳細(xì)介紹了Vue+Element-U實(shí)現(xiàn)分頁(yè)顯示效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • vue如何實(shí)現(xiàn)無(wú)縫輪播圖

    vue如何實(shí)現(xiàn)無(wú)縫輪播圖

    這篇文章主要介紹了vue如何實(shí)現(xiàn)無(wú)縫輪播圖,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • vue實(shí)現(xiàn)的多頁(yè)面項(xiàng)目如何優(yōu)化打包的步驟詳解

    vue實(shí)現(xiàn)的多頁(yè)面項(xiàng)目如何優(yōu)化打包的步驟詳解

    這篇文章主要介紹了vue實(shí)現(xiàn)的多頁(yè)面項(xiàng)目如何優(yōu)化打包的步驟詳解,文中通過(guò)示例代碼以及圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • vue路由組件路徑如何用變量形式動(dòng)態(tài)引入

    vue路由組件路徑如何用變量形式動(dòng)態(tài)引入

    這篇文章主要介紹了vue路由組件路徑如何用變量形式動(dòng)態(tài)引入問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • nuxt中刷新頁(yè)面后防止store值丟失問(wèn)題

    nuxt中刷新頁(yè)面后防止store值丟失問(wèn)題

    這篇文章主要介紹了nuxt中刷新頁(yè)面后防止store值丟失問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • 快速解決vue-cli在ie9+中無(wú)效的問(wèn)題

    快速解決vue-cli在ie9+中無(wú)效的問(wèn)題

    今天小編就為大家分享一篇快速解決vue-cli在ie9+中無(wú)效的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-09-09
  • Vue3中使用defineCustomElement 定義組件詳解

    Vue3中使用defineCustomElement 定義組件詳解

    這篇文章主要為大家介紹了Vue3中使用defineCustomElement 定義組件詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-10-10
  • ElementUI?select彈窗在特定場(chǎng)合錯(cuò)位問(wèn)題解決方案

    ElementUI?select彈窗在特定場(chǎng)合錯(cuò)位問(wèn)題解決方案

    這篇文章主要介紹了ElementUI?select彈窗在特定場(chǎng)合錯(cuò)位問(wèn)題解決方案,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2024-01-01
  • vue.js源代碼core scedule.js學(xué)習(xí)筆記

    vue.js源代碼core scedule.js學(xué)習(xí)筆記

    這篇文章主要為大家詳細(xì)介紹了vue.js源代碼core scedule.js的學(xué)習(xí)筆記,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-07-07

最新評(píng)論