【发布时间】:2018-11-18 02:50:37
【问题描述】:
我在 IE 11 上收到此错误:
这是我的 webpack 和 babel 配置:
webpack 配置
const path = require('path');
const webpack = require('webpack');
const { VueLoaderPlugin } = require('vue-loader');
const StylishWebpackPlugin = require('webpack-stylish');
const ForkTsCheckerWebpackPlugin = require('fork-ts-checker-webpack-plugin');
const withLogRocket = process.argv.includes('--with-logrocket');
if (withLogRocket) {
/* eslint-disable no-console */
console.info('-> Building with LogRocket enabled.');
/* eslint-enable */
}
// Base webpack configuration for all environments.
module.exports = {
context: path.dirname(__dirname),
entry: {
app: './src/main.js',
},
target: 'web',
output: {
filename: '[name].[contenthash].js',
hashDigestLength: 8,
},
resolve: {
extensions: ['.ts', '.js', '.vue'],
alias: {
'@': path.resolve(__dirname, '../src'),
},
},
module: {
rules: [
{
test: /\.js/,
exclude: /node_modules/,
use: {
loader: 'babel-loader',
},
},
{
test: /\.ts$/,
exclude: /node_modules/,
use: [
{
loader: 'babel-loader',
},
{
loader: 'ts-loader',
options: {
transpileOnly: true,
},
},
],
},
{
test: /\.vue$/,
loader: 'vue-loader',
},
{
test: /\.css$/,
use: [
'style-loader',
'css-loader',
],
},
{
test: /\.scss$/,
use: [
'style-loader',
'css-loader',
'sass-loader',
],
},
],
},
stats: 'errors-only',
plugins: [
new VueLoaderPlugin(),
new ForkTsCheckerWebpackPlugin({
tslint: true,
reportFiles: ['src/**/*.ts'],
}),
new StylishWebpackPlugin(),
new webpack.DefinePlugin({
USE_LOGROCKET: withLogRocket,
}),
],
};
babelrc 文件
{
"presets": ["env"],
"plugins": [
"transform-es2015-destructuring",
"transform-object-rest-spread"
]
}
我不确定这是由于...sources 传播还是其他原因。我很确定我有babel-transform-object-rest-spread 包,但我仍然不明白为什么会出现这个错误,我也使用了babel-preset-env。正如您在配置中看到的那样,我正在运行一个纯 JS(VueJS、typescript)应用程序。我已经阅读了很多关于使用 polyfill 等的文章,但它并没有帮助我让我们的应用在 IE11 上运行。
【问题讨论】:
-
请注意,有问题的行有 argument spread,这与 object spread 不同(不确定是否重要)
-
哦,好吧,我该如何在 IE11 上解决这个问题? :D
-
您使用的是
env预设,但从未定义 Babel 应该为什么环境生成代码(所以我假设在这种情况下不支持 IE 11)。
标签: javascript vue.js webpack internet-explorer-11 babeljs