my.onPageNotFound

简介

my.onPageNotFound

监听小程序要打开的页面不存在事件。

仅响应小程序冷启动或热启动时的页面找不到事件,不支持处理 路由 API 的失败场景。

如果没有使用 my.onPageNotFound 注册监听,则当跳转页面不存在时,将显示 页面不存在 提示页。

入参

Function listener

小程序要打开的页面不存在事件的监听函数。

参数

Object res

属性

类型

描述

path

String

不存在页面的路径(代码包路径)。

query

Object

打开不存在页面的 query 参数。

isEntryPage

Boolean

是否本次启动的首个页面。

例如:从分享等入口进来,首个页面是开发者配置的分享页面。

代码示例

my.onPageNotFound(Function listener)

//app.js

const handlePageNotFound = (res) => {
 my.redirectTo({
 url: 'pages/...'
 }); // 如果是 tabbar 页面,请使用 my.switchTab
};

my.onPageNotFound(handlePageNotFound)

App({
 onLaunch() {
 
 }
})
说明
  • 开发者可以在回调中进行页面重定向,但必须在回调中同步处理,异步处理(例如 setTimeout 异步执行)无效。

  • 回调中重定向的页面必须是已经加载好资源的页面,如果是未加载的分包页面和插件页面,运行时会报错,无法完成重定向。