收藏
回答

wx.agentconfig偶现wx.agentConfig is not a function

按照官方文档的流程使用,在企业微信浏览器中使用在wx.config调用成功后调用wx.agentConfig,会偶尔报错Uncaught (in promise) TypeError: wx.agentConfig is not a function(…),一直无法解决,引入的

<script src="https://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>

<script src="https://open.work.weixin.qq.com/wwopen/js/jwxwork-1.0.0.js"></script>


最后一次编辑于  2021-07-31
回答关注问题邀请回答
收藏

1 个回答

  • B~
    B~
    2021-08-03

    有大佬有类似情况没,求解决

    2021-08-03
    有用
    回复 7
    • 企业微信运营专员-千夜
      企业微信运营专员-千夜
      2021-08-03
      你好,麻烦提供一下这里的代码片段看下
      2021-08-03
      回复
    • B~
      B~
      2021-08-03回复企业微信运营专员-千夜
      let url = window.location.href.split('#')[0]
        return new Promise((resolve, reject) => {
          axios
            .get(
              `${token.tokenUrl.url}/v2/app-base-login/GetQywxCorpInfo`,
              {
                headers: {
                  Authorization: getToken()
                }
              }
            )
            .then(data => {
              if (data) {
                // 如果取数据成功
                let appId = data.data.Data.CorpId
                let agentId = data.data.Data.AgentId
                axios.get(`${token.tokenUrl.url}/v2/app-base-login/GetQYWXJsSign?OrgId=&CorpId=&AppId=&SignUrl=${url}`, {
                  headers: {
                    Authorization: getToken()
                  }
                }).then(res => {
                  let noncestr = res.data.Data.Noce
                  let timestamp = res.data.Data.Timestamp
                  let signature = res.data.Data.Sign
                  wx.config({
                    beta: true, // 必须这么写,否则wx.invoke调用形式的jsapi会有问题
                    // debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
                    appId: appId, // 必填,企业微信的corpID
                    timestamp: timestamp, // 必填,生成签名的时间戳
                    nonceStr: noncestr, // 必填,生成签名的随机串
                    signature: signature, // 必填,签名,见 附录-JS-SDK使用权限签名算法
                    jsApiList: [
                      'agentConfig',
                      'selectEnterpriseContact',
                      'onMenuShareAppMessage',
                      'onMenuShareWechat',
                      'onMenuShareTimeline',
                      'shareWechatMessage',
                      'shareAppMessage'
                    ] // 必填,需要使用的JS接口列表,凡是要调用的接口都需要传进来
                  })
                  wx.ready(function () {
                    axios
                      .get(
                        `${token.tokenUrl.url}/v2/app-base-login/GetAppQYWXJsSign?OrgId=&CorpId=&AppId=&SignUrl=${url}`,
                        {
                          headers: {
                            Authorization: getToken()
                          }
                        }
                      )
                      .then(res => {
                        let noncestr = res.data.Data.Noce
                        let timestamp = res.data.Data.Timestamp
                        let signature = res.data.Data.Sign
                        wx.agentConfig({
                          corpid: appId, // 必填,企业微信的corpid,必须与当前登录的企业一致
                          agentid: agentId, // 必填,企业微信的应用id (e.g. 1000247)
                          timestamp: timestamp, // 必填,生成签名的时间戳
                          nonceStr: noncestr, // 必填,生成签名的随机串
                          signature: signature, // 必填,签名,见附录-JS-SDK使用权限签名算法
                          jsApiList: ['selectExternalContact'], // 必填,传入需要使用的接口名称
                          success: function (res) {
                            resolve(res)
                          },
                          fail: function (res) {
                            if (res.errMsg.indexOf('function not exist') > -1) {
                              alert('版本过低请升级')
                            }
                            reject()
                          }
                        })
                      })
                  })
                  wx.error(res => {
                    
                    // reject()
                  })
                })
              }
            })
        })
      2021-08-03
      回复
    • B~
      B~
      2021-08-03回复企业微信运营专员-千夜
      麻烦帮忙看一下,谢谢
      2021-08-03
      回复
    • 企业微信运营专员-千夜
      企业微信运营专员-千夜
      2021-08-04
      代码看起来没有问题,这个是在哪个平台出现的,企业微信 webview 还是 企业微信 小程序的webview调用,在企业微信客户端调用正常吗
      2021-08-04
      回复
    • 企业微信运营专员-千夜
      企业微信运营专员-千夜
      2021-08-04回复B~
      可以参考下,对应 agentConfig,是做了一层等待检测的
      2021-08-04
      回复
    查看更多(2)
登录 后发表内容