向 MDBTable 添加排序
Add sorting to MDBTable
我正在尝试为我的 table 添加排序。我试图避免使用以下列重新格式化 json:[{}].
相反,我想直接在 MDBTable 数据中添加排序选项。
这可能吗?或者我可以指定 MDBTable 的列吗?
下面的代码工作正常,但列不正确table。
render() {
return (
<div>
<h1 className="text-center">Coronastatistik för sverige</h1>
<MDBTable>
<MDBTableHead>
<tr>
<th>Regtion</th>
<th>Fall</th>
<th>Fall per 100 000 invånare</th>
<th>Procent av fall i Sverige</th>
</tr>
</MDBTableHead>
<MDBTableBody>
{this.state.regions.map(region => (
<tr>
<td>{region.Region}</td>
<td>{region.Fall.toLocaleString()}</td>
<td>{region.Incidens}</td>
<td>{region.Procent} %</td>
</tr>
))}
</MDBTableBody>
</MDBTable>
</div>
);
}
为了能够首先对 MDBTable 进行排序,您必须将其作为 MDBDataTable 进行排序。然后在我的例子中,我必须用它需要的数据创建 json 对象。对我来说,麻烦的部分是了解如何构建 suitable json 对象。但是之后 table 就没问题了。
这需要此格式的对象
data: {
columns: [{
label: 'Name',
field: 'name',
sort: 'asc',
width: 150 }],
rows: [
{
name: 'Tiger Nixon',
position: 'System Architect',
office: 'Edinburgh',
age: '61',
date: '2011/04/25',
salary: '0'
}}
然后你return MDBDataTable
return (
<MDBDataTable
striped
bordered
small
data={data}
/>
);
我正在尝试为我的 table 添加排序。我试图避免使用以下列重新格式化 json:[{}].
相反,我想直接在 MDBTable 数据中添加排序选项。
这可能吗?或者我可以指定 MDBTable 的列吗?
下面的代码工作正常,但列不正确table。
render() {
return (
<div>
<h1 className="text-center">Coronastatistik för sverige</h1>
<MDBTable>
<MDBTableHead>
<tr>
<th>Regtion</th>
<th>Fall</th>
<th>Fall per 100 000 invånare</th>
<th>Procent av fall i Sverige</th>
</tr>
</MDBTableHead>
<MDBTableBody>
{this.state.regions.map(region => (
<tr>
<td>{region.Region}</td>
<td>{region.Fall.toLocaleString()}</td>
<td>{region.Incidens}</td>
<td>{region.Procent} %</td>
</tr>
))}
</MDBTableBody>
</MDBTable>
</div>
);
}
为了能够首先对 MDBTable 进行排序,您必须将其作为 MDBDataTable 进行排序。然后在我的例子中,我必须用它需要的数据创建 json 对象。对我来说,麻烦的部分是了解如何构建 suitable json 对象。但是之后 table 就没问题了。
这需要此格式的对象
data: {
columns: [{
label: 'Name',
field: 'name',
sort: 'asc',
width: 150 }],
rows: [
{
name: 'Tiger Nixon',
position: 'System Architect',
office: 'Edinburgh',
age: '61',
date: '2011/04/25',
salary: '0'
}}
然后你return MDBDataTable
return (
<MDBDataTable
striped
bordered
small
data={data}
/>
);