uni-app h5的onHide获取当前页面路径一直显示首页

uni-app h5的onHide获取当前页面路径一直显示首页

开发环境 版本号 项目创建方式
Windows 2017.8 HBuilderX
产品分类:uniapp/H5

浏览器平台:Chrome
浏览器版本:版本 96.0.4664.110(正式版本) 64 位)

### 操作步骤:
  onHide() {  
      const pages = getCurrentPages();  
      const currentPage = pages[pages.length - 1];  
      console.log(currentPage.route)  
  },

预期结果:

获取到当前页面路径

实际结果:

获取的是首页路径

bug描述:

onHide h5的onHide获取当前页面路径一直显示首页,在app上面正常

```javascript
  const pages = getCurrentPages();  
  const currentPage = pages[pages.length - 1];  
  console.log(currentPage.route)
1 回复

uni-app 中,onHide 是页面生命周期钩子之一,当页面隐藏时触发。如果你在 onHide 中获取当前页面路径时一直显示首页路径,可能是因为在页面隐藏时,当前页面的路径已经被切换为首页路径。

要解决这个问题,你可以在页面隐藏之前(例如在 onUnloadonBeforeUnload 中)获取当前页面的路径,并将其存储在一个变量中,然后在 onHide 中使用这个变量。

以下是一个示例代码:

export default {
  data() {
    return {
      currentPagePath: ''
    };
  },
  onLoad() {
    // 获取当前页面路径
    this.currentPagePath = this.$mp.page.route;
  },
  onHide() {
    // 使用之前存储的页面路径
    console.log('当前页面路径:', this.currentPagePath);
  },
  onUnload() {
    // 页面卸载时也可以获取路径
    this.currentPagePath = this.$mp.page.route;
  }
};
回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!