reactjs - 错误:元素类型无效:需要字符串(对于内置组件)或类/函数(...)检查“Carlist”的渲染方法
问题描述
我正在关注一本关于 Spring + React 的全栈开发的书。我是一个完全的新手,我遵循了一本书中提供的代码,但我得到了标题中提供的错误。我知道这可能与进口有关,但我不知道问题出在哪里。
应用程序.js
import React from 'react';
import './App.css';
import AppBar from '@material-ui/core/AppBar';
import Toolbar from '@material-ui/core/Toolbar';
import Typography from '@material-ui/core/Typography';
import Carlist from './components/Carlist';
function App() {
return (
<div className="App">
<AppBar position="static" color="default">
<Toolbar>
<Typography variant="h6" color="inherit">
CarList
</Typography>
</Toolbar>
</AppBar>
<Carlist></Carlist>
</div>
);
}
export default App;
Carlist.js
import React, { Component } from 'react';
import {SERVER_URL} from '../constants.js'
import ReactTable from "react-table";
class Carlist extends Component {
constructor(props) {
super(props);
this.state = { cars: []};
}
componentDidMount() {
fetch(SERVER_URL + 'api/cars')
.then((response) => response.json())
.then((responseData) => {
this.setState({
cars: responseData._embedded.cars,
});
})
.catch(err => console.error(err));
}
render() {
const columns = [{
Header: 'Brand',
accessor: 'brand'
}, {
Header: 'Model',
accessor: 'model',
}, {
Header: 'Color',
accessor: 'color',
}, {
Header: 'Year',
accessor: 'year',
}, {
Header: 'Price €',
accessor: 'price',
},]
return (
<div className="App">
<ReactTable data={this.state.cars} columns={columns}
filterable={true}/>
</div>
);
}
}
export default Carlist;
解决方案
我设法找到了问题。对于任何想知道的人来说,在 react-table 中呈现表格的方式在版本 7 中发生了显着变化。解决方案是降级到版本 6 或遵循版本 7 中的文档并调整代码。
对比:V7 实现:https ://github.com/tannerlinsley/react-table/blob/master/examples/basic/src/App.js V6 实现:https ://www.npmjs.com/package/react-表-v6#example
推荐阅读
- spring-cloud - Zuul 没有路由到服务
- networking - 将不成功的连接尝试的输出附加到 .txt 文件
- c# - NETCore Web 应用启动时无法加载文件或程序集
- reactjs - ReactJS 如何在 app.js 中使用 withRouter
- javascript - 数组中的差/和,以检查生成的两个数字是否导致另一个数组
- c# - 如何从部分视图 ViewModel 获取数据到主 ViewModel
- http - 如何在soapui中获取位置标头
- angularjs - 为什么'<'绑定的 currentValue 未定义当我作为 Angular 中的文字字符串传递时
- mmenu - 使用带有预处理脚本的新 mmlight 时出现编译错误
- rust - 返回数组大小的关联 const