Webpack - Babel 错误 - 找不到相对于目录的预设“@babel/env”
Webpack - Babel Error - Couldn't find preset "@babel/env" relative to directory
我是开发新手。在尝试构建我的应用程序时,我收到以下错误。我引用了:Similar Issue 但无法解析:
Module build failed (from ./node_modules/babel-loader/lib/index.js):
Error: Couldn't find preset "@babel/env" relative to directory "/home/jdev/www/react-redux-node-elasticsearch"
at /home/jdev/www/react-redux-node-elasticsearch/node_modules/babel-core/lib/transformation/file/options/option-manager.js:293:19
这是我的package.json
"dependencies": {
"babel-cli": "^6.26.0",
"babel-core": "^6.26.3",
"babel-env": "^2.4.1",
"babel-loader": "^7.1.5",
"babel-preset-env": "^1.7.0",
"babel-preset-es2015": "^6.24.1",
"babel-preset-react": "^6.24.1",
"express": "^4.16.4",
"pug": "^2.0.3",
"webpack": "^4.28.4"
},
"devDependencies": {
"webpack-cli": "^3.2.1"
}
这是.babelrc的内容
{
"presets": [
"babel-env",
"babel-preset-env",
"babel-preset-react"
]
}
有人可以协助配置吗?这对于像我这样的新手来说非常令人困惑,我在网上查看了多个问题,但我无法解决这个问题。我想你提前花时间和帮助。
杰夫,你是对的,这是一个版本控制问题。这对你来说现在可能是一个可以接受的变通办法。
在您的 package.json 文件中将您的代码修改为以下依赖版本:
"dependencies": {
"babel": "^6.5.2",
"babel-cli": "^6.18.0",
"babel-core": "^6.21.0",
"babel-loader": "^6.2.10",
"babel-preset-es2015": "^6.18.0",
"babel-preset-react": "^6.16.0",
"express": "^4.14.0",
"pug": "^2.0.0-beta6",
"react": "^15.4.2",
"react-dom": "^15.4.2",
"webpack": "^1.14.0"
}
您的 .babelrc
文件看起来不错。
此外,在您的 webpack.config.js 文件中添加以下内容以确保您在此处的配置也正确:
module.exports = {
entry: "./path/to/your/app.js",
output: {
path: __dirname + "/src/js",
filename: "bundle.min.js"
},
module: {
loaders: [{
exclude: /(node_modules)/,
loader: "babel",
query: {
presets: ["es2015", "react"]
}
}]
},
watch: true
}
我是开发新手。在尝试构建我的应用程序时,我收到以下错误。我引用了:Similar Issue 但无法解析:
Module build failed (from ./node_modules/babel-loader/lib/index.js):
Error: Couldn't find preset "@babel/env" relative to directory "/home/jdev/www/react-redux-node-elasticsearch"
at /home/jdev/www/react-redux-node-elasticsearch/node_modules/babel-core/lib/transformation/file/options/option-manager.js:293:19
这是我的package.json
"dependencies": {
"babel-cli": "^6.26.0",
"babel-core": "^6.26.3",
"babel-env": "^2.4.1",
"babel-loader": "^7.1.5",
"babel-preset-env": "^1.7.0",
"babel-preset-es2015": "^6.24.1",
"babel-preset-react": "^6.24.1",
"express": "^4.16.4",
"pug": "^2.0.3",
"webpack": "^4.28.4"
},
"devDependencies": {
"webpack-cli": "^3.2.1"
}
这是.babelrc的内容
{
"presets": [
"babel-env",
"babel-preset-env",
"babel-preset-react"
]
}
有人可以协助配置吗?这对于像我这样的新手来说非常令人困惑,我在网上查看了多个问题,但我无法解决这个问题。我想你提前花时间和帮助。
杰夫,你是对的,这是一个版本控制问题。这对你来说现在可能是一个可以接受的变通办法。
在您的 package.json 文件中将您的代码修改为以下依赖版本:
"dependencies": {
"babel": "^6.5.2",
"babel-cli": "^6.18.0",
"babel-core": "^6.21.0",
"babel-loader": "^6.2.10",
"babel-preset-es2015": "^6.18.0",
"babel-preset-react": "^6.16.0",
"express": "^4.14.0",
"pug": "^2.0.0-beta6",
"react": "^15.4.2",
"react-dom": "^15.4.2",
"webpack": "^1.14.0"
}
您的 .babelrc
文件看起来不错。
此外,在您的 webpack.config.js 文件中添加以下内容以确保您在此处的配置也正确:
module.exports = {
entry: "./path/to/your/app.js",
output: {
path: __dirname + "/src/js",
filename: "bundle.min.js"
},
module: {
loaders: [{
exclude: /(node_modules)/,
loader: "babel",
query: {
presets: ["es2015", "react"]
}
}]
},
watch: true
}