我有一个 SectionList,我用来自 firebase 的数据填充它。该列表显示事件信息按日期切片,用当月的可见光THIS MONTH,并使用自己的速记价值的其他日期JAN,FEB等等。
我得到的数据很好,可以很好地显示它,但我不知道如何按日期对数据数组进行分组。仅供参考,日期作为日期字符串 ' 2019-01-05'保存在数据库中,我使用 moment 使用此方法格式化它们:
formatDateToMonth(date) {
let fullDate = moment(date);
fullDate.month();
const month = fullDate.format('MMM');
return month.toUpperCase();
}
Run Code Online (Sandbox Code Playgroud)
返回JAN. 我运行一个简单的if语句来检查当前月份的 title 值,我用 moment 格式化,如果匹配,我将 title 的显示名称更改为THIS MONTH.
数据被推送到一个数组,如下所示:
listData.push({
data: [
{
id: event,
eventName: eventObj.eventName,
location: eventObj.location,
description: eventObj.description,
creatorsName: eventObj.creatorsName,
date: eventObj.date,
discipline: eventObj.discipline
}
],
title
});
Run Code Online (Sandbox Code Playgroud)
标题是月份名称和我需要对其进行排序和分组的键。
这是它目前的样子:
我希望同一月份的每个事件都在同一部分下。
任何帮助都会很棒!
完整组件:
import React from 'react';
import …Run Code Online (Sandbox Code Playgroud)