create-react-app 项目调用wxLogin库报错: Cannot find name 'WxLogin'

新手上路,请多包涵

create-react-app搭建的项目,在public/index.html里引入微信扫码登录的第三方sdk

  <head>
      <script async src="http://res.wx.qq.com/connect/zh_CN/htmledition/js/wxLogin.js" type="text/javascript"></script>
  </head>
  <body>
    <noscript>You need to enable JavaScript to run this app.</noscript>
    <div id="root"></div>
  </body>

调用的时候加不加window都是报错Cannot find name 'WxLogin'

 try {
      window.WxLogin({
        id: 'qrCode',
        appid: APPID,
        redirect_uri: encodeURI(REDIRECTURL),
        scope: 'snsapi_login',
        self_redirect: true,
        state: 'no-state',
      });
    } catch (err) {
      if (onError) {
        onError(err);
      }
    }

求助

阅读 5.2k
2 个回答
✓ 已被采纳新手上路,请多包涵

原来是没有declare到全局,ts校验过不了
后来添加了一个global.d.ts文件,写入如下代码即可解决

export {};

declare global {
  interface Window {
    WxLogin: Function;
  }
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题