官方文档:https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_Open_Tag.html#21
使用步骤:
-
绑定域名(根据具体情况,用不用都行)
登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。 -
引入JS文件
在需要调用JS接口的页面引入如下JS文件:http://res.wx.qq.com/open/js/jweixin-1.6.0.js (支持https)
备注:支持使用 AMD/CMD 标准模块加载方法加载。 -
通过config接口注入权限验证配置并申请所需开放标签
wx.config({
debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印
appId: '', // 必填,公众号的唯一标识
timestamp: , // 必填,生成签名的时间戳
nonceStr: '', // 必填,生成签名的随机串
signature: '',// 必填,签名
jsApiList: [], // 必填,需要使用的JS接口列表
openTagList: [] // 可选,需要使用的开放标签列表,例如['wx-open-launch-app']
});
- 实例
<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