uniapp官方提供的onPageNotFound可以写在App.vue,跟onLaunch生命周期同级。

export default {
    onLaunch(options){
        console.log(options)
    },
    onPageNotFound(res){
		uni.reLaunch({
			url: '/pages/index'
		})
	}
}

 根本没用。。。。这个函数根本不执行。然后看支付宝的文档,编译之后在app.js中修改代码,添加my.onPageNotFound。

//app.js
const handlePageNotFound = (res) => {
  my.redirectTo({
    url: 'pages/...'
  });
};
if(my.canIUse('onPageNotFound')){
    my.onPageNotFound(handlePageNotFound)
}

require('./common/runtime.js')
require('./common/vendor.js')
require('./common/main.js')

url scheme链接中页面不存在alipays://platformapi/startapp?appId=2021xxxxxxxxxxx&page=pages/index/index/index可以执行并成功重定向到指定的页面, 但是程序没有销毁由从原路进入错误页面还是会报页面已失效的错误。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐