Reactjs 如何对时间进行排序并以正确的顺序显示消息

Reactjs 如何对时间进行排序并以正确的顺序显示消息,reactjs,Reactjs,此处消息的显示顺序错误,你好吗?的发送方消息应位于hi heelo的接收方消息底部,如何对时间进行排序?这是密码,请帮我提前谢谢 { newArr ? newArr.map((m) => { return <div className={m.type === "sent" ? 'media media-chat media-chat-reverse' : 'media media-chat'}><p>

此处消息的显示顺序错误,
你好吗?
的发送方消息应位于
hi heelo
的接收方消息底部,如何对时间进行排序?这是密码,请帮我提前谢谢

       { newArr ? newArr.map((m) => {   
            return  <div className={m.type === "sent" ? 'media media-chat media-chat-reverse' : 'media media-chat'}><p>{m.msg}</p>
            <p>{m.date}</p>
          </div>
          }) : null }
{newArr?newArr.map((m)=>{
返回{m.msg}

{m.date}

}):null}
{newArr?newArr.sort((a,b)=>a.date>b.date?1:-1).map((m)=>{
返回(
{m.msg}

{m.date}

) }):null}
这不适用于
a.date
b.date
正确相同的情况。在这种情况下,
sort
回调应该返回
0
,而不是-1。您还没有说
date
是什么(数字?日期?字符串?)。如果是一个数字或日期,
sort
回调应该是:
.sort((a,b)=>a.Date-b.Date)
或从最旧到最新(
.sort((a,b)=>b.Date-a.Date)
表示从最新到最旧)。如果它是一个字符串,但基本上:
.sort((a,b)=>a.date.localeCompare(b.date))
用于升序词典排序(在函数体中反向
a
b
用于降序排序)。
{ newArr ? newArr.sort((a, b) => a.date > b.date ? 1 : -1).map((m) => {   
  return (
    <div className={m.type === "sent" ? 'media media-chat media-chat-reverse' : 'media media-chat'}><p>{m.msg}</p>
      <p>{m.date}</p>
    </div>)
  }) : null }