微信公众号 Vue js-sdk

一:下载js-sdk

"weixin-js-sdk": "^1.6.0"
npm i weixin-js-sdk

二:引入

//在main文件全局挂载
import wx from 'weixin-js-sdk'
Vue.prototype.$wx = wx

三:设置js-sdk的配置信息

appId后台获取、jsApiList参考官方文档填入你所需要的接口名
注意点:1.拿取签名的url必须和当前路径的url相同,在当前路径的url带有参数的情况下需要encodeURIComponent(url),否则提示63002无效的签名 2.报40048无效的url,检查js接口安全域名是否带有协议http/https,有则去掉,只需要ip或域名

async setWxConfig() {
      const url = location.href
      const { data } = await getSignature(url)
      this.$wx.config({
        debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
        appId: '', // 必填,公众号的唯一标识
        timestamp: data.timestamp, // 必填,生成签名的时间戳
        nonceStr: data.nonceStr, // 必填,生成签名的随机串
        signature: data.signature,// 必填,签名
        jsApiList: [''] // 必填,需要使用的JS接口列表
      })
    },
  // 判断是否在微信客户端
    isWeChat() {
      const ua = navigator.userAgent.toLowerCase();
      return ua.indexOf('micromessenger') != -1 // 在true 不在false
    }

四:使用

this.$wx.ready(function(){
  // config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。
});
this.$wx.error(function(res){
  // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
});
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容