vue项目IOS9项目白屏!vue报错::ES6转码ES5失败,

线上vue项目在其他手机开打一切正常,但是在ios9.3报错:SyntaxError: Unexpected keyword 'const'. Const declarations are not supported in strict mode!

查了一些资料说是因为ios9.3不支持es6语法

一顿操作猛如虎,一看操作还是失败

1)webpack-dev-server回滚到了2.7.1

2)安装了babel-preset-es2015 babel-preset-es2015

main.js也引入了import 'babel-polyfill'和import 'es6-promise/auto'

但是打包之后在dist文件夹下所搜还是能查到const和let,项目在ios9.3还是报错!!说明es6没有成功转成es5!!

请问各位大神有什么办法?

网上找了很多种方法都失败!!!

这个问题搞了我两天了!!!

为什么es6转es5失败?
babelrc文件.pngconfig下的indexjs文件.pngmain文件.pngpackage文件.pngwebpack.base.conf文件.png

阅读 3.1k
1 个回答

我也遇到过类似的问题,但是忘了怎么解决的了,说下我现在的配置:

//  package.json
{
//  ... 其他配置不列出来了
  "browserslist": [
    "defaults",
    "not ie < 11",
    "last 2 versions",
    "> 1%",
    "iOS 7",
    "last 3 iOS versions"
  ],
  "babel": {
    "presets": [
      "env"
    ],
    "plugins": [
      [
        "transform-runtime"
      ]
    ]
  }
}

// webpack.common.js
// 一条 rule
    {
        test: /\.js$/i,
        exclude: /(node_modules|brower_components)/,
        loader: 'babel-loader'
    }

我没有写 .babelrc,根据官网的说法,在 package.json 里写也是等价的。
最大的嫌疑是 browsersList

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