如何从uniapp中的webview页面返回到uniapp的页面
1条回答 默认 最新
- Usinian 2023-05-05 16:43关注
基于GPT
在 uni-app 中,从 webview 页面返回到 uni-app 页面,需要在 webview 中触发一个返回事件,然后在 uni-app 中监听该事件并进行相应的处理。具体步骤如下:在 webview 页面中,可以使用 JavaScript 的 window.history.back() 方法来触发返回事件,例如:
<button onclick="window.history.back()">返回</button>
在 uni-app 中,可以通过监听 uni-app 的 backbutton 事件来处理从 webview 返回的操作。可以在 onLoad 方法中添加如下代码:
onLoad() { uni.onBackPress(() => { const pages = getCurrentPages() if (pages.length > 1) { uni.navigateBack({ delta: 1 }) } else { // 返回到 uni-app 的首页 uni.switchTab({ url: '/pages/index/index' }) } }) }
在上述代码中,uni.onBackPress() 方法可以监听 backbutton 事件,当触发该事件时,会执行传入的回调函数。在回调函数中,可以通过 getCurrentPages() 方法获取当前页面栈,如果栈中存在多个页面,则通过 uni.navigateBack() 方法返回到前一个页面,否则通过 uni.switchTab() 方法返回到 uni-app 的首页。
注意:需要在 webview 中设置 plus.webview.currentWebview().setStyle({softinputMode: "adjustResize"}),使得在 webview 中弹出键盘时,webview 不会占满整个屏幕。
解决 无用评论 打赏 举报
悬赏问题
- ¥20 关于#vue.js#的问题:后端返回的代码如下,根据后端返回的数据在页面上重新展示
- ¥15 visual studio 社区版离线激活失败了
- ¥30 python密码表示
- ¥15 Flask应用部署到阿里云服务器失败,无法访问网页,问题出在哪里?
- ¥15 有什么好的直流步进减速电机42的厂家推荐,保持力矩达到0.3N.M
- ¥15 一道蓝桥杯的题,请问我错在哪里
- ¥15 关于#android问题,xposed模块找不到so
- ¥15 UE5.4.2创建C++项目成功,但是编译失败
- ¥15 华为手机备份nas,airdisk,遇到的空间不足问题。求个详细的解决方案。
- ¥20 Cknife无法使用