Если дата равна сегодняшнему дню, добавьте значок. React JS и Ionic
Я пытаюсь добавить значок "Новый" example: <IonBadge color="primary">New</IonBadge>
в <IonCardHeader>
если (job.createdAt)
равно "сегодня".
Как вы порекомендуете мне это сделать?
Дата как в, текущая дата, а не строка.
Я использую Ionic React v4.
Функция карты ниже.
Большое спасибо за понимание!!
function renderJobList(job) {
return [{}].concat(job).map((job, i) =>
i !== 0 ? (
<LinkContainer key={job.jobId} to={`/jobinfo/${job.jobId}`}>
<IonItemGroup>
<IonCard>
<IonCardHeader>
<IonCardSubtitle><b>{(job.packageSelected)}</b></IonCardSubtitle>
<IonCardTitle><h3>{(job.streetAddress)} {(job.city)} {(job.state)} {(job.zipCode)}</h3></IonCardTitle>
</IonCardHeader>
<IonCardContent>
<p><b> Start Date: </b> {parseISO(job.startDate).toLocaleString()}</p>
<p><b> Created At: </b> {new Date(job.createdAt).toLocaleString()}</p>
</IonCardContent>
</IonCard>
</IonItemGroup>
</LinkContainer>
2 ответа
Решение
Попробуйте добавить это:
let today = new Date(new Date().getFullYear(),new Date().getMonth() , new Date().getDate())
а затем используйте:
<IonCardHeader>{job.createdAt == today ? (<IonBadge color="primary">New</IonBadge>) : null}</IonCardHeader>
Вы можете создать объект Date, а затем сопоставить строку даты
const today = new Date().toISOString().slice(0, 10);
const isToday = new Date(job.createdAt).toISOString().slice(0, 10) == today;
// implement your logic based on isToday boolean