我正在使用create-react-app。我正在关注this示例,但我正在尝试使用自己的应用程序。当我运行此代码时,浏览器中不会显示任何内容。
import React from 'react';
import ReactDOM from 'react-dom';
import {Table, Column, Cell} from 'fixed-data-table';
import './fixed-data-table-style.css';
// Table data as a list of array.
const rows = [
['a1', 'b1', 'c1'],
['a2', 'b2', 'c2'],
['a3', 'b3', 'c3'],
// .... and more
];
class TableExample extends React.Component {
renderTable() {
return(
<Table
rowHeight={50}
rowsCount={rows.length}
width={5000}
height={5000}
headerHeight={50}>
<Column
header={<Cell>Col 1</Cell>}
cell={<Cell>Column 1 static content</Cell>}
width={2000}
/>
<Column
header={<Cell>Col 2</Cell>}
cell={<Cell mySpecialProp="column2" />}
width={1000}
/>
<Column
header={<Cell>Col 3</Cell>}
cell={({rowIndex, ...props}) => (
<Cell {...props}>
Data for column 3: {rows[rowIndex][2]}
</Cell>
)}
width={2000}
/>
</Table>)
}
render() {
return (
<div>
{ this.renderTable() }
</div>
);
}
}
// Render your table
ReactDOM.render(
<TableExample /> , document.getElementById('root')
);
答案 0 :(得分:0)
创建一个返回jsx的方法不是反应中的典型模式。以下应该没有问题。
import React from 'react';
import ReactDOM from 'react-dom';
import {Table, Column, Cell} from 'fixed-data-table';
import './fixed-data-table-style.css';
// Table data as a list of array.
const rows = [
['a1', 'b1', 'c1'],
['a2', 'b2', 'c2'],
['a3', 'b3', 'c3'],
// .... and more
];
class TableExample extends React.Component {
render() {
return (
<div>
<Table
rowHeight={50}
rowsCount={rows.length}
width={5000}
height={5000}
headerHeight={50}>
<Column
header={<Cell>Col 1</Cell>}
cell={<Cell>Column 1 static content</Cell>}
width={2000}
/>
<Column
header={<Cell>Col 2</Cell>}
cell={<Cell mySpecialProp="column2" />}
width={1000}
/>
<Column
header={<Cell>Col 3</Cell>}
cell={({rowIndex, ...props}) => (
<Cell {...props}>
Data for column 3: {rows[rowIndex][2]}
</Cell>
)}
width={2000}
/>
</Table>
</div>
);
}
}
// Render your table
ReactDOM.render(
<TableExample /> , document.getElementById('root')
);
编辑:删除了一些janky代码。