reactjs - 具有特定日期列的可排序反应材料 UI 表
问题描述
我有一个显示一些数据的反应材料 UI 表。我希望能够根据最新的日期记录对表进行排序到第一个,有没有办法默认这样做?
<TableHead style={{ backgroundColor: "lightgrey" }}>
<TableRow>
<TableCell>Location</TableCell>
<TableCell align="right">Slot-Time </TableCell>
<TableCell align="right" ><TableSortLabel onClick={() => handleSort('fromDate')}>From Date</TableSortLabel></TableCell>
<TableCell align="right">From Time</TableCell>
<TableCell align="right">To Date</TableCell>
<TableCell align="right">To Time</TableCell>
<TableCell align="right">Days in Week</TableCell>
<TableCell> </TableCell>
</TableRow>
</TableHead>
<TableBody>
{resultTable &&
resultTable.slice(page * rowsPerPage, page * rowsPerPage + rowsPerPage).sort(order === 'asc'? ascCompare: desCompare ).map((n) => {
return (
<TableRow key={n.id}>
<TableCell>
{ facilitiesList ? getFacilityName(n.facilityId) : ""}
</TableCell>
<TableCell align="right">{n.slotTime}</TableCell>
<TableCell align="right">{Moment(n.fromDate, "DD-MM-YYYY").format("MMMM Do YYYY")} </TableCell>
<TableCell align="right">{n.fromTime}</TableCell>
<TableCell align="right">{Moment(n.toDate, "DD-MM-YYYY").format("MMMM Do YYYY")}</TableCell>
<TableCell align="right">{n.toTime}</TableCell>
<TableCell align="right">
{n.daysOfWeek
.split(",")
.map((day) => {
return days[parseInt(day) - 1];
})
.join()}
</TableCell>`
解决方案
function compare(a, b) {
if (a.date is less than b.date) { // u can convert date into second to compare
return -1;
}
if (a.date is greater than b.date ) {
return 1;
}
// a.date must be equal to b.date
return 0;
}
并修复:
...resultTable.slice(page * rowsPerPage, page * rowsPerPage + rowsPerPage).sort(compare).map...
推荐阅读
- python - 使用包含消息的信息以安全的方式直接从信使 API 启动 python 脚本
- java - Gluon 项目 - 我运行 /.gradle 运行时找不到 Springboot 依赖项
- django - 如何在 django 命令中使用多进程?
- r - 在调用框架中修改数据对象时,避免 lme4 中加权模型上的 confint.merMod 失败
- javascript - 将关键字从 javascript 拆分为 C#
- sql-server - 在插入语句中将表名、列名和值作为变量给出时,在 SQL Server 表中插入数据?
- java - Oozie java 操作失败,原因为:java.lang.ClassNotFoundException: com.fasterxml.jackson.core.exc.InputCoercionException
- c# - 如何使 Unity Color 像指针一样工作?
- javascript - Mongoose - 使用现有条目将日期字段转换为日期数组
- android - 在android的可滚动布局中禁用按钮的滚动