uniapp 获取页面来源

获取当前页面栈的实例,以数组形式按栈的顺序给出,数组中的元素为页面实例,第一个元素为首页,最后一个元素为当前页面。

javascript 复制代码
let pages = getCurrentPages();
if (pages.length > 1) { // 若页面栈长度大于1则表示不止一个页面被打开了
    let previousPage = pages[pages.length - 2]; // 上一个页面为页面栈列表中倒数第二个元素
    console.log('上一个页面路由地址', previousPage.$page.route);
} else {
    console.log('只有一个页面');
}
页面跳转注意事项注意:

getCurrentPages() 仅用于展示页面栈的情况,请勿修改页面栈,以免造成页面状态错误。
页面关闭时,对应页面实例会在页面栈中删除。

页面跳转注意事项
  • navigateTo, redirectTo 只能打开非 tabBar 页面。
  • switchTab 只能打开 tabBar 页面。
  • `reLaunch`` 可以打开任意页面。
  • 页面底部的 tabBar 由页面决定,即只要是定义为 tabBar 的页面,底部都有tabBar。
  • 不能在首页 onReady 之前进行页面跳转。
相关推荐
阿懂在掘金2 分钟前
为什么写 Vue 强烈建议用 Setup?除了复用,更是代码组织
前端·vue.js
sorryhc12 分钟前
我让 AI 帮我写了一个 Code Agent!
前端·openai·ai编程
工边页字13 分钟前
面试官:请详细介绍下AI中的token,越详细越好!
前端·人工智能·后端
anyup13 分钟前
月销 8000+,uView Pro 让 uni-app 跨端开发提速 10 倍
前端·uni-app·开源
码路飞37 分钟前
热榜全是 OpenClaw,但我用 50 行 Python 就造了个桌面 AI Agent 🤖
java·javascript
前端Hardy1 小时前
别再忽略 Promise 拒绝了!你的 Node.js 服务正在“静默自杀”
前端·javascript·面试
前端Hardy1 小时前
别再被setTimeout闭包坑了!90% 的人都写错过这个经典循环
前端·javascript·vue.js
小林coding1 小时前
专为程序员打造的简历模版来啦!覆盖前端、后端、测开、大模型等专业简历
前端·后端
前端Hardy1 小时前
你的 Vue 组件正在偷偷吃掉内存!5 个常见的内存泄漏陷阱与修复方案
前端·javascript·面试
RaidenLiu1 小时前
Flutter Platform Channel 底层架构解析 —— 从 BinaryMessenger 到跨平台消息通信机制
前端·flutter·前端框架