• 本质问题:vue-cli兼容ios10

    part0:最终解决方案

  1. // vue-cli 2.x
  2. // buid/webpack.prod.conf.js
  3. // 覆盖UglifyJsPlugin对应配置,当前'uglifyjs-webpack-plugin'为1.1.1
  4. new UglifyJsPlugin({
  5. cache: true,
  6. uglifyOptions: {
  7. safari10: true,
  8. },
  9. }),

part1:无效的解决方案,有效的解决过程

看到报错详情基本可以确认是ios10特有的问题。
参考:https://www.cnblogs.com/cczlovexw/p/8425194.html这篇文章,可以知道是ios10官方的bug

image.png
image.png

解决:
1. 进入 build 文件夹;
2. 找到 webpack.prod.conf.js 文件;
3. 在 UglifyPlugin 的定义里添加关于 mangle 的选项,使它变成下面这个样子:

  1. new UglifyJsPlugin({
  2. uglifyOptions: {
  3. compress: {
  4. warnings: false
  5. },
  6. mangle: {
  7. safari10: true
  8. }
  9. },
  10. sourceMap: config.build.productionSourceMap,
  11. parallel: true
  12. }),

**