我有一个呈现组件并将其插入时间轴的表单,但我不知道如何让它按时间顺序呈现新的提交,以便它以正确的顺序插入。
这是我迄今为止一直在尝试的。
render() {
return (
<div className="timeline-container">
<ul>
{this.state.activities
.sort((a, b) => a.date > b.date)
.map((activity, i) => (
<Activity
key={i}
data={activity}
handleDelete={this.handleDelete}
/>
))}
</ul>
</div>
);
}
这是 Activity 组件:
<li>
<span></span>
<div className="activity-title">{this.state.activity.title}</div>
<div className="activity-info">{this.state.activity.description}</div>
<div className="activity-location">{this.state.activity.location}</div>
<div className="activity-date">{this.state.activity.date.slice(0, 10)}</div>
<button onClick={this.handleDelete.bind(this, this.state.activity.id)}>
Delete
</button>
</li>;
目前,提交表单时它仍会自动呈现,但不会对它们进行排序。