买个萝卜 2019-12-16 18:13 采纳率: 0%
浏览 1996

Vue项目兼容IE浏览器 使用babel-preset-env后依然无效

如题,使用babel-preset-env配置后 进行 run build 打包编译,打包后的代码 如 箭头函数,let 依然没有转为ES5语法,导致IE浏览器报错

报错如图(IE10):

图片说明
图片说明

以下是babel-preset-env相关配置:

//babel.config.js:

const plugins = [];
if (['production', 'prod'].includes(process.env.NODE_ENV)) {
    plugins.push("transform-remove-console")
}

module.exports = {
    presets: [
        [
            "@vue/app",
            {
                "useBuiltIns": "entry",
                polyfills: [
                    'es6.promise',
                    'es6.symbol'
                ]
            }
        ]
    ],
    plugins: plugins
};

//.babelrc

{
  "presets": [
    "@babel/preset-env"
  ],
  "plugins": [
    "@babel/plugin-transform-runtime"
  ]
}

//Vue.config.js

module.exports = {
    transpileDependencies: ['webpack-dev-server/client'],
    publicPath: process.env.NODE_ENV === 'production' ? '/cdss/' : '/',
    outputDir: 'cdss',
    assetsDir: 'static',
    chainWebpack: config => {
        config.entry.app = ['babel-polyfill', './src/main.js'];
    }
};

//main.js

import '@babel/polyfill'; //第一行
import Es6Promise from 'es6-promise'
Es6Promise.polyfill();
//...其他常规配置

//package.json

//...其他常规配置
"browserslist": [
    "> 1%",
    "last 2 versions",
    "ie <=8"
  ]

难道是哪儿配置有问题吗?怎么改都不行

这是我看的教程帖.

  • 写回答

1条回答 默认 最新

  • 欧阳筱苒 2019-12-17 14:46
    关注

    不要用es6语法,所有不被打包的代码都改成 es5

    评论

报告相同问题?

悬赏问题

  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题