参考:uniapp 消息列表进入详情后页面返回时保存当前位置

onPageScroll()记录当前的高度位置

  1. onPageScroll(e) {
  2. this.scrollTop = e.scrollTop
  3. console.log("this.scrollTop", this.scrollTop);
  4. },

跳转页面的逻辑里缓存上次的高度值

  1. // 查看逻辑
  2. tjshow(val, scrollTop) {
  3. this.lastScrollTop = scrollTop;
  4. console.log("this.lastScrollTop: ", this.lastScrollTop);
  5. }

返回之前页面时,使用缓存值定位页面位置

这里要使用setTimeout()

  1. // 返回前页面
  2. actionFormClose() {
  3. // 重置actionForm
  4. this.actionForm = this.$options.data().actionForm
  5. let timer = setTimeout(() => {
  6. uni.pageScrollTo({
  7. scrollTop: this.lastScrollTop, //距离页面顶部的距离
  8. duration: 0
  9. });
  10. }, 0)
  11. },