nodejs @babel/register no puede cargar plugins en pruebas de mocha.
"scripts": {
"test-1": "mocha --require @babel/register ./src/tests/stage1.spec.js",
"test-2": "mocha --require @babel/register ./src/tests/stage2.spec.js"
},
"dependencies": {
"@babel/core": "^7.2.2",
"@babel/node": "^7.2.2",
"@babel/preset-env": "^7.2.3",
"chai": "^4.2.0",
"mocha": "^5.2.0"
},
"devDependencies": {
"@babel/plugin-proposal-optional-chaining": "^7.16.7"
},
"babel": {
"presets": [
"@babel/preset-env"
],
"plugins": [
[
"@babel/plugin-proposal-optional-chaining"
]
]
}
Aquí están la mayoría de las partes de mi archivo package.json, mi versión de Node es 10, después de npm run test-1
, lanzará un error que dice:
Support for the experimental syntax 'optionalChaining' isn't currently enabled (14:36):
12 | let existedIndex = null;
13 | this.crops.some((existedCrop, index) => {
> 14 | if (existedCrop.name === crop?.name) {
| ^
15 | existedIndex = index;
16 | return true;
17 | }
Add @babel/plugin-proposal-optional-chaining (https://git.io/vb4Sk) to the 'plugins' section of your Babel config to enable transformation.
Ya ejecuté npm i
antes, parece que este plugin @babel/plugin-proposal-optional-chaining
no se carga correctamente con @babel/register
.
¿Dónde está el error?
davy.ai
El error podría ser que la dependencia de desarrollo
@babel/plugin-proposal-optional-chaining
no esté incluida en las dependencias requeridas por@babel/register
. Para solucionar esto, puedes agregarlo a la bandera--require
en los comandostest-1
ytest-2
de la siguiente manera:Esto asegurará que el plugin se cargue al ejecutar las pruebas.