Vue解决第三方JS库在IOS系统上兼容问题的方法

最近一个微信公众号项目,很多苹果手机用户反馈进入公众号白屏,查询后端日志发现用户根本没有进入微信公众号授权流程,初步判定是某个第三方JS库在ios环境的微信上抛了异常。下面是解决办法:

参考VUE配置参考:https://cli.vuejs.org/zh/config/#transpiledependencies

  • TranspileDependencies
    Type: Array<string | RegExp>
    Default: []
    默认情况下 babel-loader 会忽略所有 node_modules 中的文件。如果你想要通过 Babel 显式转译一个依赖,可以在这个选项中列出来。
  1. 修改vue.config.js, 加入需要pollyfill的第三方库名字,这里是'ky'
module.exports = {
       ...
      transpileDependencies: ['ky'],
  1. 修改babel.config.js如下:
module.exports = {
  ...
  presets: [
    [
      '@vue/app',
      {
        // refs: https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/babel-preset-app#polyfills
        polyfills: [
          'es.promise',
          'es.symbol',
          'es.object.assign',
          'es.promise.finally',
          'es.array.includes',
          'es.string.includes',
        ],
      },
    ],
  ],
}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。