React Build Fail: сборка модуля не удалась (из ./node_modules/babel-loader/lib/index.js): не удается найти модуль 'babel-core' - PullRequest
0 голосов
/ 27 сентября 2019

Я застрял со следующей ошибкой при попытке создать приложение реагирования с Webpack4 и Babel7.

Error: Cannot find module 'babel-core'
[1]     at Function.Module._resolveFilename (module.js:547:15)
[1]     at Function.Module._load (module.js:474:25)
[1]     at Module.require (module.js:596:17)
[1]     at require (/Users/taelee/Desktop/fullstack-web-project/server-two/client/node_modules/webpack-cli/node_modules/v8-compile-cache/v8-compile-cache.js:161:20)

Я попытался удалить папку node_modules и переустановить зависимости следующим образом.

Я пытался установить разные версии babel-loader, но он не работал .. Это похоже на проблему с версиями пакетов babel.

Вот мой Package.json:

"babel": {
    "presets": [
      "@babel/preset-react",
      "@babel/preset-env"
    ]
  },
  "dependencies": {
    "axios": "^0.19.0",
    "less": "^3.10.3",
    "materialize-css": "^1.0.0",
    "react": "^16.9.0",
    "react-dom": "^16.9.0",
    "react-redux": "^7.1.1",
    "react-router-dom": "^5.0.1",
    "react-scripts": "3.1.1",
    "redux": "^4.0.4",
    "redux-thunk": "^2.3.0"
  },
"devDependencies": {
    "@babel/core": "^7.6.2",
    "@babel/preset-env": "^7.6.2",
    "@babel/preset-react": "^7.0.0",
    "babel-loader": "^7.0.6",
    "babel-preset-es2015": "^6.24.1",
    "babel-preset-react": "^6.24.1",
    "babel-preset-stage-0": "^6.24.1",
    "babel-preset-stage-2": "^6.24.1",
    "css-loader": "^3.2.0",
    "less-loader": "^5.0.0",
    "style-loader": "^1.0.0",
    "webpack": "^4.39.1",
    "webpack-cli": "^3.3.9",
    "webpack-dev-server": "^3.2.1"
  }

Вот мой webpack.config.js:

const path = require('path');

module.exports = {
  entry: './src/index.js',
  output: {
    path: path.resolve(__dirname, 'lib'),
    filename: 'index.js',
    libraryTarget: 'commonjs2'
  },
  module: {
    rules: [
      {
        test: /\.(js|jsx)$/,
        exclude: /node_modules/,
        use: { loader: 'babel-loader' }
      },
      {
        test: /\.(?:le|c)ss$/,
        use: [
          require.resolve('style-loader'),
          {
            loader: require.resolve('css-loader'),
            options: {
              importLoaders: 1
            }
          },
          {
            loader: require.resolve('less-loader'),
            options: {
              importLoaders: 1
            }
          }
        ]
      }
    ]
  },
  externals: {
    'react': 'commonjs react'
  }
};

Может кто-нибудь помочь мне с этим вопросом?

...