我使用的是节点版本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"]
}