Ответ 1
npm install @babel/core --save
. babel изменил свой пакет, так что ваш babel-core
не будет таким же, как @babel/core
Я следую вместе с этим учебником webpack4/реагировать:
https://www.youtube.com/watch?v=deyxI-6C2u4
Я следовал за ним точно до той части, где он запускает npm. Разница в том, что его приложение работает, а мое получает ошибку:
Не удается найти модуль '@babel/core'
Полная ошибка:
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]
Я попытался переустановить babel-core, но все еще не найден. Вот мой 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"
}
}
Мой 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'
})
]
}
Вот ссылка на git-репо:
https://gitlab.com/jfny/webpack4-sample
Кто-нибудь знает, что происходит? Благодарю.
npm install @babel/core --save
. babel изменил свой пакет, так что ваш babel-core
не будет таким же, как @babel/core
Недавнее обновление Babel до версии 7 изменило наименования пакетов узлов.
Например, теперь вам нужно установить
npm install --save-dev @babel/core @babel/preset-env
и
npm install --save-dev @babel/preset-react
чтобы заставить его работать с React. Затем вы можете использовать их в своем файле .babelrc:
{
"presets": [
"@babel/preset-env",
"@babel/preset-react"
]
}
Или как альтернатива, если в вашем package.json нет .babelrc:
...
"keywords": [],
"author": "",
"license": "ISC",
"babel": {
"presets": [
"@babel/preset-env",
"@babel/preset-react"
]
},
"devDependencies": {
...
Если вы хотите больше узнать об этом, вы можете воспользоваться этой недавней настройкой Webpack + Babel + React.
Для babel-loader @8 требуется Babel 7.x (пакет "@babel/core"). Если вы хотите использовать Babel 6.x("babel-core"), вам следует установить "babel-loader @7".
Я могу решить эту проблему с помощью команды ниже
npm install @babel/core --save
В моем случае мне пришлось удалить Babel 6
npm uninstall --save-dev babel-cli babel-core babel-polyfill babel-preset-es2015 babel-preset-stage-2 babel-register
а затем переустановите Babel 7
npm i --save-dev @babel/cli @babel/core @babel/node @babel/polyfill @babel/preset-env
и это сработало для меня.
для тех из вас, кто использует @babel/core рядом с babel-node:
Я только что установил @babel/core, используя npm i @babel/core --save-dev
, но когда я попытался использовать babel-node, он не распознал пакет @babel/core, я удалил @babel/core и снова установил его, используя npm i @babel/core --save
, и он снова заработает!
попробуйте установить npm install @babel/core --save если это не работает, попробуйте удалить node_modules и переустановить
Я решил ту же ошибку, удалив все модули babel из dev Dependencies, выполнив следующую команду:
npm install -D babel-loader @babel/core @babel/preset-env
Вы можете обратиться к этой ссылке, если приведенная выше команда не работает:
[https://github.com/babel/babel/issues/8599#issuecomment-417866691]