最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

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

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

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

做法: 使用到了vuex ,beforeRouteLeave

1.首先在vuex中state定義一個(gè)變量來記錄當(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.在需要的頁面中 我使用了beforeRouteLeave 來記錄沒有路由離開的時(shí)候當(dāng)前瀏覽的位置

 beforeRouteLeave (to, from, next) { // 離開路由前
  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)樾枰涗浀捻撁婧芏?,我覺的這樣比較方便,只需要在route 頁面加一個(gè)參數(shù)就好了

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

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

 beforeRouteLeave (to, from, next) { // 離開路由前
  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頁面獲取完數(shù)據(jù)的時(shí)候使用$nextTick,讓頁面恢復(fù)到上次瀏覽的位置

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

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

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

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

相關(guān)文章

  • vue+elementUI用戶修改密碼的前端驗(yàn)證規(guī)則

    vue+elementUI用戶修改密碼的前端驗(yàn)證規(guī)則

    用戶登錄后修改密碼,密碼需要一定的驗(yàn)證規(guī)則,這篇文章主要介紹了vue+elementUI用戶修改密碼的前端驗(yàn)證,需要的朋友可以參考下
    2024-03-03
  • Vue數(shù)據(jù)綁定實(shí)例寫法

    Vue數(shù)據(jù)綁定實(shí)例寫法

    在本篇文章里小編給大家整理的是關(guān)于Vue數(shù)據(jù)綁定實(shí)例寫法以及相關(guān)知識(shí)點(diǎn),需要的朋友們學(xué)習(xí)下。
    2019-08-08
  • 使用Vue.js實(shí)現(xiàn)一個(gè)循環(huán)倒計(jì)時(shí)功能

    使用Vue.js實(shí)現(xiàn)一個(gè)循環(huán)倒計(jì)時(shí)功能

    在Web應(yīng)用中,倒計(jì)時(shí)功能常用于各種場(chǎng)景,如活動(dòng)倒計(jì)時(shí)、定時(shí)任務(wù)提醒等,Vue.js作為一款輕量級(jí)的前端框架,提供了豐富的工具和API來實(shí)現(xiàn)這些功能,本文將詳細(xì)介紹如何使用Vue.js實(shí)現(xiàn)一個(gè)循環(huán)倒計(jì)時(shí)功能,需要的朋友可以參考下
    2024-09-09
  • Vue中的無限加載vue-infinite-loading的方法

    Vue中的無限加載vue-infinite-loading的方法

    本篇文章主要介紹了Vue中的無限加載vue-infinite-loading的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-04-04
  • Vue?使用postMessage?實(shí)現(xiàn)父子跨域通信

    Vue?使用postMessage?實(shí)現(xiàn)父子跨域通信

    這篇文章主要介紹了Vue應(yīng)用?postMessage?實(shí)現(xiàn)父子跨域通信,通過示例介紹了postMessage的使用,本文結(jié)合示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-12-12
  • Vue.js 實(shí)現(xiàn)數(shù)據(jù)展示全部和收起功能

    Vue.js 實(shí)現(xiàn)數(shù)據(jù)展示全部和收起功能

    這篇文章主要介紹了Vue.js 實(shí)現(xiàn)數(shù)據(jù)展示全部和收起功能,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-09-09
  • vue實(shí)現(xiàn)聊天框自動(dòng)滾動(dòng)的示例代碼

    vue實(shí)現(xiàn)聊天框自動(dòng)滾動(dòng)的示例代碼

    本文主要介紹了vue實(shí)現(xiàn)聊天框自動(dòng)滾動(dòng)的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • el-table實(shí)現(xiàn)搜索高亮展示并滾動(dòng)到元素位置的操作代碼

    el-table實(shí)現(xiàn)搜索高亮展示并滾動(dòng)到元素位置的操作代碼

    這篇文章主要介紹了el-table實(shí)現(xiàn)搜索高亮展示并滾動(dòng)到元素位置,本文通過示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2024-01-01
  • vue-cli的工程模板與構(gòu)建工具詳解

    vue-cli的工程模板與構(gòu)建工具詳解

    vue-cli提供的腳手架只是一個(gè)最基礎(chǔ)的,也可以說是Vue團(tuán)隊(duì)認(rèn)為的工程結(jié)構(gòu)的一種最佳實(shí)踐。這篇文章主要介紹了vue-cli的工程模板與構(gòu)建工具 ,需要的朋友可以參考下
    2018-09-09
  • vue中@click綁定多個(gè)事件問題(教你避坑)

    vue中@click綁定多個(gè)事件問題(教你避坑)

    這篇文章主要介紹了vue中@click綁定多個(gè)事件問題(教你避坑),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-08-08

最新評(píng)論

鹿泉市| 昌黎县| 湟中县| 新和县| 永州市| 锦屏县| 抚宁县| 昌黎县| 温州市| 阳信县| 旌德县| 孝感市| 桂阳县| 丰县| 晋江市| 惠来县| 寻乌县| 兴和县| 宜宾市| 长兴县| 鸡东县| 长岭县| 延庆县| 蓝田县| 庆元县| 永年县| 红安县| 汾西县| 吴川市| 古交市| 高要市| 三江| 措勤县| 阳西县| 丰原市| 凤山县| 应用必备| 无棣县| 洛扎县| 海南省| 神木县|