feat:app嵌套h5返回键
This commit is contained in:
@@ -10,6 +10,8 @@ onMounted(async() => {
|
||||
appBridge.setHeaderShown(true);
|
||||
// 设置系统状态栏明暗主题
|
||||
appBridge.setStatusBarStyle('light');
|
||||
// // 设置禁止原生返回
|
||||
// appBridge.takeOverAndroidBack();
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
@@ -27,6 +27,8 @@ router.beforeEach((to, from, next) => {
|
||||
utils.setSessionStorage('xToken', to.query.digitalYiliToken);
|
||||
}
|
||||
appBridge.setTitle(to.meta.title as string);
|
||||
// 设置禁止原生返回
|
||||
appBridge.takeOverAndroidBack();
|
||||
// 定义路由是否可以返回的判断
|
||||
const routerCanGoBack = () => {
|
||||
const position = router.options.history.state?.position;
|
||||
@@ -39,13 +41,9 @@ router.beforeEach((to, from, next) => {
|
||||
};
|
||||
// 添加 Android 返回按钮监听方法
|
||||
window.onAndroidBack = () => {
|
||||
// 设置禁止原生返回
|
||||
appBridge.takeOverAndroidBack();
|
||||
if (routerCanGoBack()) {
|
||||
console.log('h5返回')
|
||||
router.back(); // 执行 h5 路由返回
|
||||
router.back(); // 使用 router.back() 而不是 router.goBack(),因为 Vue Router 使用 back() 方法
|
||||
} else {
|
||||
console.log('app返回')
|
||||
callAppGoBack(); // 调用 APP 的返回方法
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user