wake-up-neo.com

Modul '@babel/core' kann nicht gefunden werden

Ich folge mit diesem Tutorial zu webpack4/response:

https://www.youtube.com/watch?v=deyxI-6C2u4

Ich habe es genau bis zu dem Teil verfolgt, wo er npm startet. Der Unterschied ist, seine App läuft und meine bekommt den Fehler:

Modul '@babel/core' kann nicht gefunden werden

Der volle Fehler:

ERROR in ./src/index.js
Module build failed (from ./node_modules/babel-loader/lib/index.js):
Error: Cannot find module '@babel/core'
    at Function.Module._resolveFilename (module.js:547:15)
    at Function.Module._load (module.js:474:25)
    at Module.require (module.js:596:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (C:\Users\joeyf\Desktop\Code\Github\webpack4-sample\node_modules\babel-loader\lib\index.js:5:15)
    at Module._compile (module.js:652:30)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
 @ multi (webpack)-dev-server/client?http://localhost:8080 (webpack)/hot/dev-server.js ./src/index.js main[2]

Ich habe versucht, Babel-Core neu zu installieren, wird aber immer noch nicht gefunden. Hier ist meine package.json:

{
  "name": "webpack4-sample",
  "version": "1.0.0",
  "description": "A sample setup of Webpack4 with React and Babel",
  "main": "index.js",
  "scripts": {
    "start": "webpack-dev-server --mode development --open --hot",
    "build": "webpack --mode production"
  },
  "author": "Joey Fenny",
  "license": "ISC",
  "dependencies": {
    "babel": "^6.23.0",
    "babel-cli": "^6.26.0",
    "react": "^16.4.2",
    "react-dom": "^16.4.2"
  },
  "devDependencies": {
    "babel-core": "^7.0.0-rc.4",
    "babel-loader": "^8.0.0",
    "babel-preset-env": "^1.7.0",
    "babel-preset-react": "^6.24.1",
    "html-webpack-plugin": "^3.2.0",
    "webpack": "^4.17.1",
    "webpack-cli": "^3.1.0",
    "webpack-dev-server": "^3.1.6"
  }
}

Meine webpack.config.js:

const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');

module.exports = {
    entry: './src/index.js',
    output: {
        path: path.join(__dirname, '/dist'),
        filename: 'index_bundle.js'
    },
    module: {
        rules: [{
            test: /\.js$/,
            exclude: path.join(__dirname, '/node_modules'),
            use: {
                loader: 'babel-loader'
            }
        }]
    },
    plugins: [
        new HtmlWebpackPlugin({
            template: './src/index.html'
        })
    ]
}

Hier ist ein Link zu einem Git Repo:

https://gitlab.com/jfny/webpack4-sample

Weiß jemand was los ist? Vielen Dank.

11
J. Doe

npm install @babel/core --save. babel hat sein Paket geändert, damit dein babel-core nicht mit @babel/core

27
Wesgur

Durch das kürzlich erfolgte Upgrade von Babel auf Version 7 wurden die Namen der Knotenpakete geändert. 

Zum Beispiel müssen Sie jetzt npm install --save-dev @babel/core @babel/preset-env und npm install --save-dev @babel/preset-react installieren, damit es mit React funktioniert. 

Dann können Sie diese in Ihrer .babelrc -Datei verwenden:

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

Oder als Alternative, wenn Sie keine .babelrc in Ihrer package.json haben:

...
"keywords": [],
"author": "",
"license": "ISC",
"babel": {
  "presets": [
    "@babel/preset-env",
    "@babel/preset-react"
  ]
},
"devDependencies": {
...

Wenn Sie mehr darüber erfahren möchten, können Sie das aktuelle Webpack + Babel + React-Setup besuchen.

7
Robin Wieruch

babel-loader @ 8 benötigt Babel 7.x (das Paket '@ babel/core'). Wenn Sie Babel 6.x ('babel-core') verwenden möchten, sollten Sie 'babel-loader @ 7' installieren.

2
MinteLiu.l

Ich kann dieses Problem mit dem folgenden Befehl beheben

npm install @babel/core --save
0
Mandakini

In meinem Fall musste ich babel 6 deinstallieren

npm uninstall --save-dev babel-cli  babel-core babel-polyfill babel-preset-es2015 babel-preset-stage-2 babel-register

und dann neu installieren babel 7

npm i  --save-dev  @babel/cli  @babel/core @babel/node  @babel/polyfill  @babel/preset-env

und es hat bei mir funktioniert.

0
Atta Ur Rehman

für diejenigen unter Ihnen, die @ babel/core neben babel-node verwenden: Ich habe gerade @ babel/core mit npm i @babel/core --save-dev installiert, aber als ich versucht habe, babel-node zu verwenden, hat es das @ babel/core-Paket nicht erkannt deinstallierte @ babel/core und installierte es erneut mit npm i @babel/core --save und es funktionierte wieder!

0
pouya