vue-cli 下使用js-sdk,接口调用出错

我在项目中安装"weixin-js-sdk": "^1.2.0" 并在main.js中这样引用了

import WX from 'weixin-js-sdk'
Vue.use(WX)

但是我在其中一个组件中使用

   this.$store.dispatch('checkWechat')
      .then(function (res) {
        wx.config({
          debug: true,
          appId: 'wxa6b619144b2b2983',
          timestamp: res.obj.timestamp,
          nonceStr: res.obj.nonceStr,
          signature: res.obj.signature,
          jsApiList: ['getLocation']
        })
    wx.ready(function () {
        wx.getLocation({
          type: 'wgs84', // 默认为wgs84的gps坐标,如果要返回直接给openLocation用的火星坐标,可传入'gcj02'
          success: function (res) {
            console.log('success', res)
          }
          , fail: function (err) {
            console.log('获取地理位置失败', err)
          }
        })
    }

浏览器却给出的错误却是:
获取地理位置失败 Object {errMsg: "geoLocation:fail, the permission value is offline verifying"}

不知道是哪里出了错

补充:我通过checkJsApi()来检查这个getLocation接口发现返回值是:
Object {errMsg: "checkJsApi:ok", checkResult: Object},object是一个空对象
而官方给出的示例是:
{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"},所以我的getLocation接口是配置失败了的

阅读 7k
3 个回答

jsApiList里面缺少参数

微信sdk报的错误,详见微信网页开发说明文档链接描述

图片描述

最终是因为signature签名错误。。

推荐问题
宣传栏