2 回答

TA貢獻1891條經驗 獲得超3個贊
Babel 配置package.json
僅適用于您的特定包,而不適用于node_modules
,因此即使 Babel 設置為處理包中的所有文件,它也僅配置為對您自己的包的文件執行轉換。
您需要創建一個babel.config.json
,或者您需要將配置直接放入 Webpack 配置中,所以要么
babel.config.json
:
{
? ? "presets": [
? ? ? ? "@babel/preset-env"
? ? ]
}
或者 webpack.config.js:
module.exports = {
? ? entry:? {
? ? ? ? bundle: './index.js',
? ? },
? ? module: {
? ? ? ? rules: [
? ? ? ? ? ? {
? ? ? ? ? ? ? ? test: /\.m?js$/,
? ? ? ? ? ? ? ? use:? 'babel-loader',
? ? ? ? ? ? ? ? options: {
? ? ? ? ? ? ? ? ? ? "presets": [
? ? ? ? ? ? ? ? ? ? ? ? "@babel/preset-env"
? ? ? ? ? ? ? ? ? ? ]
? ? ? ? ? ? ? ? }
? ? ? ? ? ? },
? ? ? ? ],
? ? },
};

TA貢獻1963條經驗 獲得超6個贊
您需要將 babel 的規則包含async-mutex在您的webpack.config.js模塊中。有時您會遇到一個未轉換其 ES6 的軟件包。有趣的是,將其包含在轉譯中的最佳方法是使用exclude,如下所示:
module.exports = {
entry: {
bundle: './index.js',
},
module: {
rules: [
{
test: /\.m?js$/,
exclude: /node_modules\/(?!(async-mutex)\/).*/,
use: 'babel-loader',
},
],
},
};
此排除規則表示“排除除”node_modules之外的所有內容async-mutex。
添加回答
舉報