React build error: Module build failed (from ./node_modules/babel-loader/lib/index.js):
React build error: Module build failed (from ./node_modules/babel-loader/lib/index.js):
我正在学习教程,当我尝试构建 React 时出现错误。
Module build failed (from ./node_modules/babel-loader/lib/index.js)
5 | ReactDOM.render(
> 6 | <App />,
| ^
7 | document.getElementById('root')
8 | );
我发现了类似的问题,并尝试基于此解决问题但无济于事。
这是我的 webpack.config.js:
module.exports = {
entry: './index.js',
output:{
path: __dirname,
filename: 'bundle.js'
},
module:{
rules:[
{
test: /\.jsx?$/,
loader: 'babel-loader',
exclude: '/node_modules/'
}
]
}
}
下面我有package.json,"devDependencies"
是我在以前的解决方案中找到的
{
"name": "rtsupport",
"version": "1.0.0",
"description": "Realtime support frontend",
"main": "./index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"develop": "webpack --mode development --watch",
"build": "webpack --mode development"
},
"author": "",
"license": "ISC",
"dependencies": {
"node": "^10.15.2",
"react-dom": "^16.8.4"
},
"devDependencies": {
"@babel/core": "^7.0.0-bridge.0",
"babel": "^5.8.23",
"babel-core": "^6.26.3",
"babel-loader": "^7.1.5",
"react": "^16.8.4",
"webpack": "^4.29.6",
"webpack-cli": "^3.2.3"
}
}
这些是我的初始"devDependencies"
"devDependencies": {
"@babel/core": "^7.3.4",
"babel": "^5.8.23",
"babel-core": "^6.26.3",
"babel-loader": "^8.0.5"
}
我的节点版本是:v11.10.1
尝试以下建议后:
rules:[
{
test: /\.(js|jsx)$/,
exclude: '/node_modules/',
use: [
{ loader: 'babel-loader' }
]
}
]
我仍然遇到同样的错误。
好的,如果您打算在其中使用 JSX,我认为您的 webpack 测试需要包含 .js 文件:
test: /\.(js|jsx)$/
使用该配置,您只告诉 "translate" .jsx 文件,并且由于您的主文件是 index.js,他没有加载它,请尝试添加此配置:
这样你就可以添加 js 和 jsx 文件来由你的加载程序解析
rules: [
{
exclude: /node_modules/,
test: /\.js|.jsx?$/,
use: [
{ loader: 'babel-loader' }
]
}
]
我的错我以为你有一个 babelrc,我忘了你可以在与你的 wepback.config 相同的文件夹级别创建一个文件,名称为“.babelrc”,你可以在这里指定你的加载配置,并告诉 babel加载 "react" 插件
{
"presets": [
"stage-0",
"react",
"es2015"
],
"plugins": [
"transform-class-properties",
"transform-decorators-legacy",
"transform-object-rest-spread",
"transform-es2015-destructuring"
],
"env": {
"debug": true
}
}
经过一整天的黑客攻击和浏览此网站后,我找到了解决方案。
module:{
rules:[
{
test: /\.jsx?$/,
exclude: '/node_modules/',
loader: 'babel-loader',
query:
{
presets:['react']
}
}
]
}
和 package.json 部分:
"devDependencies": {
"@babel/core": "^7.3.4",
"babel": "^5.8.23",
"babel-cli": "^6.26.0",
"babel-core": "^6.26.3",
"babel-loader": "^7.1.5",
"babel-preset-react": "^6.24.1",
"babel-preset-react-app": "^7.0.2",
"react": "^16.8.4",
"webpack": "^4.29.6",
"webpack-cli": "^3.2.3"
}
This problem can be solved by setting each babel dependencies
>=7.8.7
"devDependencies": {
"@babel/cli": "^7.13.10",
"@babel/core": "^7.13.10",
"@babel/preset-env": "^7.13.10",
"@babel/preset-react": "^7.12.13",
}
我正在学习教程,当我尝试构建 React 时出现错误。
Module build failed (from ./node_modules/babel-loader/lib/index.js)
5 | ReactDOM.render(
> 6 | <App />,
| ^
7 | document.getElementById('root')
8 | );
我发现了类似的问题,并尝试基于此解决问题但无济于事。 这是我的 webpack.config.js:
module.exports = {
entry: './index.js',
output:{
path: __dirname,
filename: 'bundle.js'
},
module:{
rules:[
{
test: /\.jsx?$/,
loader: 'babel-loader',
exclude: '/node_modules/'
}
]
}
}
下面我有package.json,"devDependencies"
是我在以前的解决方案中找到的
{
"name": "rtsupport",
"version": "1.0.0",
"description": "Realtime support frontend",
"main": "./index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"develop": "webpack --mode development --watch",
"build": "webpack --mode development"
},
"author": "",
"license": "ISC",
"dependencies": {
"node": "^10.15.2",
"react-dom": "^16.8.4"
},
"devDependencies": {
"@babel/core": "^7.0.0-bridge.0",
"babel": "^5.8.23",
"babel-core": "^6.26.3",
"babel-loader": "^7.1.5",
"react": "^16.8.4",
"webpack": "^4.29.6",
"webpack-cli": "^3.2.3"
}
}
这些是我的初始"devDependencies"
"devDependencies": {
"@babel/core": "^7.3.4",
"babel": "^5.8.23",
"babel-core": "^6.26.3",
"babel-loader": "^8.0.5"
}
我的节点版本是:v11.10.1
尝试以下建议后:
rules:[
{
test: /\.(js|jsx)$/,
exclude: '/node_modules/',
use: [
{ loader: 'babel-loader' }
]
}
]
我仍然遇到同样的错误。
好的,如果您打算在其中使用 JSX,我认为您的 webpack 测试需要包含 .js 文件:
test: /\.(js|jsx)$/
使用该配置,您只告诉 "translate" .jsx 文件,并且由于您的主文件是 index.js,他没有加载它,请尝试添加此配置:
这样你就可以添加 js 和 jsx 文件来由你的加载程序解析
rules: [
{
exclude: /node_modules/,
test: /\.js|.jsx?$/,
use: [
{ loader: 'babel-loader' }
]
}
]
我的错我以为你有一个 babelrc,我忘了你可以在与你的 wepback.config 相同的文件夹级别创建一个文件,名称为“.babelrc”,你可以在这里指定你的加载配置,并告诉 babel加载 "react" 插件
{
"presets": [
"stage-0",
"react",
"es2015"
],
"plugins": [
"transform-class-properties",
"transform-decorators-legacy",
"transform-object-rest-spread",
"transform-es2015-destructuring"
],
"env": {
"debug": true
}
}
经过一整天的黑客攻击和浏览此网站后,我找到了解决方案。
module:{
rules:[
{
test: /\.jsx?$/,
exclude: '/node_modules/',
loader: 'babel-loader',
query:
{
presets:['react']
}
}
]
}
和 package.json 部分:
"devDependencies": {
"@babel/core": "^7.3.4",
"babel": "^5.8.23",
"babel-cli": "^6.26.0",
"babel-core": "^6.26.3",
"babel-loader": "^7.1.5",
"babel-preset-react": "^6.24.1",
"babel-preset-react-app": "^7.0.2",
"react": "^16.8.4",
"webpack": "^4.29.6",
"webpack-cli": "^3.2.3"
}
This problem can be solved by setting each babel dependencies
>=7.8.7
"devDependencies": {
"@babel/cli": "^7.13.10",
"@babel/core": "^7.13.10",
"@babel/preset-env": "^7.13.10",
"@babel/preset-react": "^7.12.13",
}