将html嵌入到小程序中,想做个自动跳回小程序,在开发者工具中能跳转,但是到了真机就不行了?

排除域名校验了已经。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>自动返回首页</title>
</head>
<body onload="f()">

</body>
<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.0.js"></script>
<script>


    function f() {
        // console.log('111');
        wx.miniProgram.navigateTo({
            url: '/pages/applicant/index',
            success: function () {
                console.log('success')
            },
            fail: function () {
                console.log('fail');
            },
            complete: function () {
                console.log('complete');
            }

        });
    }
</script>
</html>
阅读 2.7k
2 个回答

你这个是嵌套的web-view组件是吧,想实现跳动H5页然后并自动返回小程序是吧? 建议按照官方文档要求,通过window.__wxjs_environment变量判断是否在小程序环境,建议在WeixinJSBridgeReady回调中使用,也可以使用JSSDK 1.3.2提供的getEnv接口。然后再执行wx.miniProgram.navigateTo
我是这样写的:

created() {
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "https://res.wx.qq.com/open/js/jweixin-1.3.2.js";
document.body.appendChild(script);    
},

backList() {
  console.log(wx, "wx");
  let that = this;
  // 判断是否在小程序环境
  wx.miniProgram.getEnv(function(res) {
    console.log(res.miniprogram, "小程序环境"); // true
    if (res.miniprogram) {
      wx.miniProgram.navigateTo({
        url: `/pages/lookReport/report-list/index?studentId=${
          that.studentId
        }`
      });
    }
  });
},

也有可能是你执行自动返回小程序的时间不对。打下断点或者console看下
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题