uni.webView.navigateTo({
url: '/pages/mppage/mppage',
success: () => {
console.log("uni.webView.navigateTo success");
},
fail: () => {
console.log("uni.webView.navigateTo fail");
}
})
- 发布:2021-01-13 13:56
- 更新:2022-07-02 20:07
- 阅读:2373
产品分类: uniapp/小程序/微信
PC开发环境操作系统: Mac
PC开发环境操作系统版本号: 10.14.6
HBuilderX类型: Alpha
HBuilderX版本号: 3.0.7
第三方开发者工具版本号: 微信开发者工具 1.02.2009301
基础库版本号: 2.14.3
项目创建方式: HBuilderX
示例代码:
操作步骤:
使用Hbx打开附件工程,运行到chrome(h5),然后再运行到微信小程序,
小程序默认会加载之前运行到h5的页面,h5页面里有个按钮,点击按钮会运行
uni.webView.navigateTo
使用Hbx打开附件工程,运行到chrome(h5),然后再运行到微信小程序,
小程序默认会加载之前运行到h5的页面,h5页面里有个按钮,点击按钮会运行
uni.webView.navigateTo
预期结果:
成功跳转到小程序页面
成功跳转到小程序页面
实际结果:
没有任何效果
没有任何效果
bug描述:
微信小程序使用webview嵌套uni-app发布的h5页面,uni.webView.navigateTo 无法跳转
已经template.h5.html加载uniwebview的sdk
uni.webView.navigateTo方法存在但是调用没效果
bug demo已经上传,使用步骤见【复现步骤】
H5页面加的有vconsole 可以直接在小程序里点vconsole图标查看h5的log
yorick (作者)
自问自答吧
文档说uni.webview.1.5.2.js要放在body下面,照做了,但微信jssdk我放head里面了,经测试
微信jssdk也要放在body的下面,之前放在head里面是不行的(强烈建议官方在文档中补充说明),
正确的写法如下:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="shortcut icon" type="image/x-icon" href="static/favicon.ico">
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<title>
<%= htmlWebpackPlugin.options.title %>
</title>
<script>
document.addEventListener('DOMContentLoaded', function() {
document.documentElement.style.fontSize = document.documentElement.clientWidth / 20 + 'px'
})
</script>
<link rel="stylesheet" href="<%= BASE_URL %>static/index.css" />
</head>
<body>
<noscript>
<strong>本站点必须要开启JavaScript才能运行</strong>
</noscript>
<div id="app"></div>
</body>
<script src="https://res.wx.qq.com/open/js/jweixin-1.4.0.js"></script>
<!-- uni 的 SDK -->
<script type="text/javascript" src="https://js.cdn.aliyun.dcloud.net.cn/dev/uni-app/uni.webview.1.5.2.js"></script>
<script>
document.addEventListener('UniAppJSBridgeReady', function() {
uni.webView.getEnv(function(res) {
console.log('当前环境:' + JSON.stringify(res));
});
});
</script>
</html>