在节点应用程序中使用babel/preset-env启用排列运算符



我使用的是节点版本14

这是我的包.json文件:

{
"scripts": {
"start": "nodemon --exec babel-node ./src/app.js",
"build": "babel ./src -s -d dist",
},
"devDependencies": {
"@babel/core": "^7.10.3",
"@babel/node": "^7.10.3",
"@babel/preset-env": "^7.10.3",
"nodemon": "^2.0.4"
}
}

这是babel.config.json文件:

{
"presets": ["@babel/preset-env"]
}

现在我想"@babel/preset-env"允许我们使用最新的JavaScript
当我运行npm start时,一切都正常。
但如果我运行run npm run build,我会得到以下错误:

SyntaxError: src/api/review/controller.js: Unexpected token (8:25)
6 | 
7 | module.exports.create = asyncHandler(async (req, res, next) => {
>  8 |     const reviewData = { ...req.body, user: req.user._id };
|                          ^
9 |     const review = await Review.create(reviewData);
10 |     response.build(res, review, 201);
11 | });

我添加了一个新的插件使其工作"@babel/plugin-proposal-object-rest-spread": "^7.10.4"

这是babel.config.json文件:

{
"presets": ["@babel/preset-env"],
"plugins": ["@babel/plugin-proposal-object-rest-spread"]
}

但我没有在工作

通过添加以下包解决问题:"@babel/cli": "^7.10.4"

安装

npm install --save-dev @babel/plugin-proposal-object-rest-spread

然后更改你的.babelrc文件:

{
"presets": ["@babel/preset-env"],
"plugins": ["@babel/plugin-proposal-object-rest-spread"]
}

相关内容

最新更新