J'ai amélioré babel 6.x → 7.x
mais ayant des problèmes d'exécution Webpack.
Il se plaint de manquer de core-js/modules/*
.
Ma babel.config.js
est dans le répertoire racine. J'ai converti l'ancien .babelrc
à js (.babelrc
a également produit les mêmes erreurs). Je suppose que c'est une collision avec tout le noyau, corejs2
, trucs d'exécution.
Il y a deux applications dans mon src, la mienne et Styleguidist (dans ./node_modules
). Mon application transpile et fonctionne avec ces mêmes package.json/babel.config, mais pas Styleguidist.
L'erreur lors de l'exécution de Styleguidist avec webpack:
Module not found: Error: Can't resolve 'core-js/modules/es.array.concat' in '/project/src/node_modules/react-styleguidist/lib/client/rsg-components/Slot'
/node_modules/react-styleguidist/lib/client/rsg-components/Slot.js
:
import "core-js/modules/es.array.concat";
import "core-js/modules/es.array.filter";
...
"dependencies": {
"@babel/polyfill": "^7.0.0",
"@babel/runtime-corejs2": "^7.4.3",
}
"devDependencies": {
"@babel/core": "^7.4.3",
"@babel/plugin-proposal-class-properties": "^7.0.0",
"@babel/plugin-proposal-decorators": "^7.0.0",
"@babel/plugin-proposal-export-namespace-from": "^7.0.0",
"@babel/plugin-proposal-function-sent": "^7.0.0",
"@babel/plugin-proposal-json-strings": "^7.0.0",
"@babel/plugin-proposal-numeric-separator": "^7.0.0",
"@babel/plugin-proposal-object-rest-spread": "^7.4.3",
"@babel/plugin-proposal-throw-expressions": "^7.0.0",
"@babel/plugin-syntax-dynamic-import": "^7.0.0",
"@babel/plugin-syntax-import-meta": "^7.0.0",
"@babel/plugin-syntax-jsx": "^7.0.0",
"@babel/plugin-transform-modules-commonjs": "^7.4.3",
"@babel/plugin-transform-react-jsx": "^7.3.0",
"@babel/plugin-transform-runtime": "^7.4.3",
"@babel/preset-env": "^7.4.3",
"@babel/register": "^7.0.0",
"babel-core": "^7.0.0-bridge.0",
"babel-eslint": "^10.0.1",
"babel-helper-vue-jsx-merge-props": "^2.0.3",
"babel-jest": "^24.7.1",
"babel-loader": "^8.0.0",
"babel-plugin-dynamic-import-node": "^2.2.0",
"babel-plugin-transform-vue-jsx": "^4.0.1",
}
module.exports = {
presets: ['@babel/preset-env'],
plugins: [
'@babel/plugin-transform-runtime',
'@babel/plugin-transform-react-jsx',
'transform-vue-jsx',
"@babel/plugin-proposal-object-rest-spread",
"@babel/plugin-syntax-dynamic-import",
"@babel/plugin-syntax-import-meta",
"@babel/plugin-proposal-class-properties",
"@babel/plugin-proposal-json-strings",
[
"@babel/plugin-proposal-decorators",
{
"legacy": true
}
],
"@babel/plugin-proposal-function-sent",
"@babel/plugin-proposal-export-namespace-from",
"@babel/plugin-proposal-numeric-separator",
"@babel/plugin-proposal-throw-expressions"],
comments: false
}
J'ai trouvé une réponse possible. Pour résoudre cette erreur, vous pouvez rétrograder la version core-js vers 2.5.7. Cette version produit une structure de catalogues correcte, avec des dossiers ES6 et ES7 séparés.
Pour rétrograder la version, exécutez simplement:
npm i -S [email protected]
J'ai eu le même problème et comme cela arrive souvent, j'ai oublié d'avoir un autre package installé comme:
"@ babel/runtime-corejs3": "^ 7.5.5",
N'oubliez pas de l'installer au même niveau où vous avez le problème (au niveau du développement, local ou de production):
npm i -D(or --save-dev) @babel/runtime-corejs3
Donc, en général, ce type d'erreurs se produit lorsqu'il y a des changements de mise à jour des dépendances dans la version et qu'ils ne sont pas rétrocompatibles avec les versions précédentes. En effet, corejs3 n'est pas du tout compatible avec corejs2.