微信环境下H5跳转小程序

官方文档:https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_Open_Tag.html#21
使用步骤:

  1. 绑定域名(根据具体情况,用不用都行)
    登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。

  2. 引入JS文件
    在需要调用JS接口的页面引入如下JS文件:http://res.wx.qq.com/open/js/jweixin-1.6.0.js (支持https)
    在这里插入图片描述
    备注:支持使用 AMD/CMD 标准模块加载方法加载。

  3. 通过config接口注入权限验证配置并申请所需开放标签

wx.config({
  debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印
  appId: '', // 必填,公众号的唯一标识
  timestamp: , // 必填,生成签名的时间戳
  nonceStr: '', // 必填,生成签名的随机串
  signature: '',// 必填,签名
  jsApiList: [], // 必填,需要使用的JS接口列表
  openTagList: [] // 可选,需要使用的开放标签列表,例如['wx-open-launch-app']
});
  1. 实例
<template>
  <div class="box">
    <div class="navigateBtn">
      <wx-open-launch-weapp
        style="width: 172px; height: 44px; display: block"
        id="launch-btn"
        username="小程序原始id,gh_开头的那个"
        :path="path(跳转路径)"
      >
        <script type="text/wxtag-template">
          <style>.btn {
            width: 100%;
            height: 100%;
            line-height: 44px;
            text-align: center;
            color: #FFFFFF;
            font-size: 15px;
            border-radius: 4px;
            border: 1px solid #FFFFFF;
            box-sizing: border-box;
            }</style>
          <div class="btn">点击跳转</div>
        </script>
      </wx-open-launch-weapp>
    </div>
  </div>
</template>
<script>
export default {
  data() {
    return {
    	path:'/page/home/index'
    };
  },
  created() {
    this.handleNavigate();
  },
  mounted() {
  	//补充一下 ios跳转小程序首次进入页面的时候 可能 wx-open-launch-weapp 不显示 刷新一下页面再次进入就可以
  	//勉强解决的方法
  	 if (!sessionStorage.getItem("reloadpage")) {
      sessionStorage.setItem("reloadpage", 1);
      location.reload();
    }
    // 打开小程序
    var btn = document.getElementById("launch-btn");
    btn.addEventListener("launch", function (e) {
      console.log("success", e);
    });
    btn.addEventListener("error", function (e) {
      alert("小程序打开失败");
      console.log("fail", e.detail);
    });
  },
  methods: {
    handleNavigate() {
        window.wx.config({
          debug: false,
          appId: '必填',
          timestamp: '必填',
          nonceStr: '必填',
          signature: '必填',
          jsApiList: ["wx-open-launch-weapp"],
          openTagList: ["wx-open-launch-weapp"],
      });
    },
  },
};
</script>

踩过的坑:https://blog.csdn.net/WQzeus/article/details/109854298

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值