일주일치 각각의 날짜에 대한 DB값을 가져와야 했다!
//중략....
const currentDate = new Date();
const oneDay = 24 * 60 * 60 * 1000;
const todayBefore= new Date(currentDate.getTime());
const oneDayBefore= new Date(currentDate.getTime() - oneDay);
const twoDayBefore= new Date(currentDate.getTime() - oneDay * 2);
const threeDayBefore= new Date(currentDate.getTime() - oneDay * 3);
const fourDayBefore= new Date(currentDate.getTime() - oneDay * 4);
const fiveDayBefore= new Date(currentDate.getTime() - oneDay * 5);
const sixDayBefore = new Date(currentDate.getTime() - oneDay * 6);
function formatDate(date) {
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0');
const day = String(date.getDate()).padStart(2, '0');
return `${year}-${month}-${day}`;
}
//각 날짜 별 전달받기.
const today = await AxiosFinal.onLoadOrderDate(formatDate(todayBefore));
setTodayBefore(today.data);
const onday = await AxiosFinal.onLoadOrderDate(formatDate(oneDayBefore));
setOnedayBefore (onday.data);
const twoday = await AxiosFinal.onLoadOrderDate(formatDate(twoDayBefore));
setTwodayBefore (twoday.data);
const threeday = await AxiosFinal.onLoadOrderDate(formatDate(threeDayBefore));
setThreedayBefore (threeday.data);
const fourday = await AxiosFinal.onLoadOrderDate(formatDate(fourDayBefore));
setFourdayBefore (fourday.data);
const fiveday = await AxiosFinal.onLoadOrderDate(formatDate(fiveDayBefore));
setFivedayBefore (fiveday.data);
const sixday = await AxiosFinal.onLoadOrderDate(formatDate(sixDayBefore));
setSixdayBefore(sixday.data);
}
//중략....
1일을 밀리초로 구한 후 각각의 값을 getTime을 통해서 빼주면 된다!
그 후 formate function을 통해서 날짜의 포멧을 변경하여 제출해준다.
Date 객체의 getTime() 메서드는 1970년 1월 1일 00시 00분 00초 UTC를 기준으로 경과 한 밀리초를 반환.
🔔 console.log(today.getTime()); = 1647233149748
function formatDate(date) {
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0');
const day = String(date.getDate()).padStart(2, '0');
return `${year}-${month}-${day}`;
}
getMonth() +1 을 해야 현재의 월이 나온다.
문자 전체의 길이와 더불어 남은 공간에 넣을 문자를 설정 할 수 있다.