我有开始时间和结束时间的时间戳,例如 事件{ eventId:一些ID, startTimestamp, endTimeStamp } 现在,我希望它们将它们呈现在Flatlist中,但是应该将它们分组在一起,例如如果我有事件8-1,则应该将8-1以下的所有事件都放在该组中,然后会有一些分区,然后下一个事件将以相同的方式发生。现在,我被困在如何渲染它们上。 我已经将它们按组进行了排列,但是它没有解决问题,因此找不到用分区呈现它们的方法。 以下是我尝试过的代码。
eventsAtDifferentTime=eventOnDate.events
do{
let minimumStart=eventOnDate.events[0].start;
let maximumEnd;
eventsAtDifferentTime.forEach((event)=>{
if(event.start==minimumStart)
eventsAtSameTime.push(event)
else
eventsAtDifferentTime.push(event)
})
eventsAtSameTime.sort((event1,event2)=>{
if(event1.end<event2.end) return -1;
if(event1.end > event2.end) return 1;
return 0;
})
maximumEnd=eventsAtSameTime[index].end
// if(index==0)
eventsAtSameTime.forEach((event)=>{
this.tempArray.push(event)
})
eventsAtSameTime=[]
eventsAtDifferentTime.forEach((event,index)=>{
if(event.start>minimumStart && event.start<maximumEnd){
this.tempArray.push(event)
eventsAtDifferentTime.splice(index,1)
}
else{
this.tempArray.push({type:'new'})
}
})
}while(eventsAtDifferentTime.length!=0)
console.log(this.tempArray)
这无法解决。任何帮助都将得到补偿