dayjs 3

[Dayjs] 왜 api 응답은 잘 오는데 화면에서 시각을 다르게 보여주지? (utc, local)

상황 🥺 버그 제보를 받았다. 분명 서버에서는 날짜 데이터를 잘 보내주고 있는데, 화면에는 다르게 표시하고 있었다. A api와 B api에서 날짜를 받아온 후에 dayjs 라이브러리를 활용해서 화면에 표시하고 있었는데, 하나는 제대로 표시되고 하나는 제대로 나오지 않았다. 원인 🌟 자세히 보니 api 응답이 조금 달랐다. 1번 2번 1번은 T, Z 가 붙어있다. T는 날짜 뒤 시간이 오는 걸 표시해주는 것이고, Z는 UTC 기준시라는 뜻이다. UTC 기준시가 아니라 다른 시간대의 시간일 경우에는 +09:00 이런 식으로 UTC 기준시로부터 얼마나 떨어져있는지 나타낸다. 아무튼 1번은 UTC 기준시라는 뜻이다!! 2번은 T, Z가 없다. 나는 dayjs(시간).('DD MMM YYYY HH:mm') 이런..

[dayjs] 모든 날짜가 오늘 날짜로 보인다고요?

사이트에서 날짜를 보여주는 부분이 있다. 그런데 특정 부분에서 이상하게 모든 날짜가 다 오늘 날짜가 보였다. 🥲 나는 그런 코드를 짠 기억이 없는데... 알고 보니 오타 때문이었다. 😂 예를 들어서 updateDate라고 써야 하는데, updateData로 쓴 것이었다. api 응답 중에서 updateData는 없으니 undefined가 되었다. 원하는 날짜로 보여주기 위해서 dayjs를 사용하고 있다. dayjs(업데이트 날짜)라고 해야하는데, 그 업데이트 날짜가 undefined로 들어가는 것이었다. dayjs(undefined)는 dayjs()로 취급이 된다. ('Day.js treats dayjs(undefined) as dayjs() due to that function parameters de..

[dayjs] 시간이 제대로 안 보인다고요? (MM, mm)

상황 😂 어드민 사이트에서 여러 정보 중에 수정일을 보여주는 페이지였다. 그런데 수정일이 제대로 안 나온다는 제보를 받았다. api는 제대로 오는데, api의 데이터를 보여주지 않고 있었다. 특히 분 쪽이 이상했다. 원인-해결 😉 날짜를 원하는 형식으로 보여주기 위해서 dayjs 라이브러리를 사용하고 있다. 그때 MM, mm을 헷갈려서 버그가 있었다. 뻘쭘했다..ㅠㅠ 시는 24시간 형식으로, 꼭 두자리로 보여주고 싶었다. 분도 1-9분이라도 01, 02, 이런 식으로 두 자리로 보여주고 싶었다. 그때 분을 mm으로 적어야 하는데, MM으로 적었다... mm은 분을 2자리로 보여주는 것이고, MM은 달(month)을 2자리로 보여주는 것이었다. 분을 보여줘야하는데 달을 보여주는 문제였다ㅠㅠ https://..

728x90