新建wxUtils.js文件
import wx from "weixin-js-sdk";
import { getJsapiSignature } from "@/api/weixin.js";
export default {
// 初始化SDK
init(apiListParam, readyFunc) {
let defaultApiList = ["hideOptionMenu", "showOptionMenu", "hideMenuItems", "showMenuItems","openLocation",
"hideAllNonBaseMenuItem", "showAllNonBaseMenuItem", "closeWindow", "getLocation",
"updateAppMessageShareData", "updateTimelineShareData","onMenuShareTimeline","onMenuShareAppMessage","onMenuShareQQ"];
//添加 openLocation 权限
if (apiListParam != null) {
defaultApiList = defaultApiList.concat(apiListParam);
}
//通过后台接口返回所需参数
getJsapiSignature({ url: window.location.href }).then((res) => {
if (res.status == 200) {
let data = res.data;
wx.config({
debug: false,
appId: data.appId,// 必填,公众号的唯一标识
timestamp: data.timestamp,// 必填,生成签名的时间戳
nonceStr: data.nonceStr, // 必填,生成签名的随机串
signature: data.signature, // 必填,签名
jsApiList: defaultApiList// 必填,需要使用的JS接口列表
});
}
});
wx.ready(typeof readyFunc == "function"?readyFunc:new Function());
},
}
页面调用
import wxUtils from "@/utils/wxUtils.js";
methods:{
openSite(){
wx.openLocation({
latitude: parseFloat(xxx),
longitude: parseFloat(xxx),
name: “地址名”,//位置名
address: “地址”,//地址的详细说明
scale: 16, //缩放比例,范围1~28,默认为28
});
},
}