SyntaxError: react-table/src/publicUtils.js: Support for the experimental syntax 'jsx' isn't currently enabled
SyntaxError: react-table/src/publicUtils.js: Support for the experimental syntax 'jsx' isn't currently enabled
我在使用 webpack 构建时遇到问题。这是我在构建时看到的错误...
ERROR in ./node_modules/react-table/src/publicUtils.js 10:35
Module parse failed: Unexpected token (10:35)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
|
| export const defaultRenderer = ({ value = '' }) => value;
> export const emptyRenderer = () => <> </>;
|
| export const defaultColumn = {
@ ./node_modules/react-table/src/plugin-hooks/useRowSelect.js 3:0-9:23 14:0-25 15:0-29 16:0-25 17:0-33 96:22-34 103:22-47 110:22-51 141:22-47 178:22-55 235:2-19 277:35-47 279:2-24 281:23-48 286:30-59 291:30-63 296:36-61 300:22-34 302:40-54 307:44-58 327:34-48
@ ./src/pages/CustomTableContainer.jsx 34:20-72
@ ./src/pages/TimeReport.jsx 18:51-88
@ ./src/pages/MainNavigation.jsx 22:41-64
@ ./src/App.js 18:45-78
@ ./src/index.js 11:34-50
在我添加 webpack 和 babel 之前,尽管我遇到了同样的问题(基本上问题是促使我首先开始添加 webpack 和 babel 的原因)...在这种情况下的错误如下:
./node_modules/react-table/src/publicUtils.js
SyntaxError: /Users/badu/Workspaces/4D-Projects/time-report/node_modules/react-table/src/publicUtils.js: Support for the experimental syntax 'jsx' isn't currently enabled (10:36):
8 |
9 | export const defaultRenderer = ({ value = '' }) => value;
> 10 | export const emptyRenderer = () => <> </>;
| ^
11 |
12 | export const defaultColumn = {
13 | Cell: defaultRenderer,
Add @babel/preset-react (https://git.io/JfeDR) to the 'presets' section of your Babel config to enable transformation.
If you want to leave it as-is, add @babel/plugin-syntax-jsx (https://git.io/vb4yA) to the 'plugins' section to enable parsing.
无论如何,我目前正在使用 React 通过 babel 和 webpack 构建我的应用程序。这是我的 .babelrc 文件
{
"presets": [
"@babel/preset-env",
"@babel/preset-react"
],
"plugins": [
"@babel/plugin-transform-runtime",
"@babel/plugin-syntax-dynamic-import",
"@babel/plugin-proposal-class-properties"
],
"env": {
"production": {
"only": ["src"],
"plugins": [
[
"transform-react-remove-prop-types",
{
"removeImport": true
}
],
"@babel/plugin-transform-react-inline-elements",
"@babel/plugin-transform-react-constant-elements"
]
}
}
}
这是我的 webpack.config.js
const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {
entry: {
index: './src/index.js'
},
plugins: [
new HtmlWebpackPlugin({
title: 'Output Management',
}),
],
output: {
filename: '[name].bundle.js',
path: path.resolve(__dirname, 'dist'),
clean: true,
},
mode: 'development',
devServer: {
contentBase: './dist',
open: true
},
module: {
rules: [
{
test: /\.jsx?$/,
exclude: /(node_modules|bower_components)/,
use: {
loader: 'babel-loader',
options: {
presets: ['@babel/preset-react'],
include: [
path.resolve('node_modules/react-table/'),
],
exclude: /node_modules\/(?!react-table).+/
}
}
},
... other loaders
]
},
resolve: {
extensions: [".js", ".jsx"],
modules: [
'node_modules'
]
}
};
我遵循了很多指南,但仍然找不到任何可以解决我问题的方法。
publicUtils.js 来自外部模块。但是这个模块里面有 dist 文件夹,里面应该有已经编译好的代码(?)
我还不是 webpack 和 babel 方面的专家,所以我可能遗漏了一些东西
不知道是生气还是什么,还是检查导入,Visual Studio自动导入我
import {useRowSelect} from "react-table/src/plugin-hooks/useRowSelect";
而正确的导入(工作)是
import {useRowSelect} from "react-table";
错误从来都不是在 webpack 或 babel 那边
希望这能为其他人节省大量时间
我在使用 webpack 构建时遇到问题。这是我在构建时看到的错误...
ERROR in ./node_modules/react-table/src/publicUtils.js 10:35
Module parse failed: Unexpected token (10:35)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
|
| export const defaultRenderer = ({ value = '' }) => value;
> export const emptyRenderer = () => <> </>;
|
| export const defaultColumn = {
@ ./node_modules/react-table/src/plugin-hooks/useRowSelect.js 3:0-9:23 14:0-25 15:0-29 16:0-25 17:0-33 96:22-34 103:22-47 110:22-51 141:22-47 178:22-55 235:2-19 277:35-47 279:2-24 281:23-48 286:30-59 291:30-63 296:36-61 300:22-34 302:40-54 307:44-58 327:34-48
@ ./src/pages/CustomTableContainer.jsx 34:20-72
@ ./src/pages/TimeReport.jsx 18:51-88
@ ./src/pages/MainNavigation.jsx 22:41-64
@ ./src/App.js 18:45-78
@ ./src/index.js 11:34-50
在我添加 webpack 和 babel 之前,尽管我遇到了同样的问题(基本上问题是促使我首先开始添加 webpack 和 babel 的原因)...在这种情况下的错误如下:
./node_modules/react-table/src/publicUtils.js
SyntaxError: /Users/badu/Workspaces/4D-Projects/time-report/node_modules/react-table/src/publicUtils.js: Support for the experimental syntax 'jsx' isn't currently enabled (10:36):
8 |
9 | export const defaultRenderer = ({ value = '' }) => value;
> 10 | export const emptyRenderer = () => <> </>;
| ^
11 |
12 | export const defaultColumn = {
13 | Cell: defaultRenderer,
Add @babel/preset-react (https://git.io/JfeDR) to the 'presets' section of your Babel config to enable transformation.
If you want to leave it as-is, add @babel/plugin-syntax-jsx (https://git.io/vb4yA) to the 'plugins' section to enable parsing.
无论如何,我目前正在使用 React 通过 babel 和 webpack 构建我的应用程序。这是我的 .babelrc 文件
{
"presets": [
"@babel/preset-env",
"@babel/preset-react"
],
"plugins": [
"@babel/plugin-transform-runtime",
"@babel/plugin-syntax-dynamic-import",
"@babel/plugin-proposal-class-properties"
],
"env": {
"production": {
"only": ["src"],
"plugins": [
[
"transform-react-remove-prop-types",
{
"removeImport": true
}
],
"@babel/plugin-transform-react-inline-elements",
"@babel/plugin-transform-react-constant-elements"
]
}
}
}
这是我的 webpack.config.js
const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {
entry: {
index: './src/index.js'
},
plugins: [
new HtmlWebpackPlugin({
title: 'Output Management',
}),
],
output: {
filename: '[name].bundle.js',
path: path.resolve(__dirname, 'dist'),
clean: true,
},
mode: 'development',
devServer: {
contentBase: './dist',
open: true
},
module: {
rules: [
{
test: /\.jsx?$/,
exclude: /(node_modules|bower_components)/,
use: {
loader: 'babel-loader',
options: {
presets: ['@babel/preset-react'],
include: [
path.resolve('node_modules/react-table/'),
],
exclude: /node_modules\/(?!react-table).+/
}
}
},
... other loaders
]
},
resolve: {
extensions: [".js", ".jsx"],
modules: [
'node_modules'
]
}
};
我遵循了很多指南,但仍然找不到任何可以解决我问题的方法。 publicUtils.js 来自外部模块。但是这个模块里面有 dist 文件夹,里面应该有已经编译好的代码(?)
我还不是 webpack 和 babel 方面的专家,所以我可能遗漏了一些东西
不知道是生气还是什么,还是检查导入,Visual Studio自动导入我
import {useRowSelect} from "react-table/src/plugin-hooks/useRowSelect";
而正确的导入(工作)是
import {useRowSelect} from "react-table";
错误从来都不是在 webpack 或 babel 那边 希望这能为其他人节省大量时间