[TIL] 2025-12-19

msus_xxviiยท2025๋…„ 12์›” 19์ผ

DailyLog

๋ชฉ๋ก ๋ณด๊ธฐ
10/37
post-thumbnail

๐ŸŽฏ ์˜ค๋Š˜ ํ•œ ์ผ

  • DailyLog ํ”„๋ก ํŠธ์—”๋“œ CRUD ๊ธฐ๋Šฅ ์™„์„ฑ

    • ๋ชฉ๋ก ์กฐํšŒ(GET)
    • ์ถ”๊ฐ€(POST)
    • ์ˆ˜์ •(PUT)
    • ์‚ญ์ œ(DELETE)
  • MUI DataGrid ๊ธฐ๋ฐ˜ ํ…Œ์ด๋ธ” UI ์•ˆ์ •ํ™”

    • content ์ปฌ๋Ÿผ ๋ง์ค„์ž„ ์ฒ˜๋ฆฌ
    • createdAt ๊ธฐ์ค€ ์ตœ์‹ ์ˆœ ์ •๋ ฌ ๋กœ์ง ์ ์šฉ
  • ์ถ”๊ฐ€/์ˆ˜์ • ํผ์„ Dialog(ํŒ์—…) ํ˜•ํƒœ๋กœ ๋ฆฌํŒฉํ† ๋ง

    • Add / Edit ๋ชจ๋“œ ๋ถ„๋ฆฌ
    • row ํด๋ฆญ ์‹œ ์ˆ˜์ • ๋ชจ๋‹ฌ ์˜คํ”ˆ
    • Before
    • After
  • FullCalendar ๋„์ž… ๊ฒฐ์ • ๋ฐ ํ”„๋ก ํŠธ์—”๋“œ ํŒจํ‚ค์ง€ ์„ค์น˜

    • @fullcalendar/react
    • @fullcalendar/daygrid
    • @fullcalendar/interaction

๐Ÿ’ก ๋ฐฐ์šด ์ 

  • ๋‹จ์ˆœ CRUD๋ฅผ ๋„˜์–ด UI ํ๋ฆ„(ํ…Œ์ด๋ธ” โ†’ ๋ชจ๋‹ฌ โ†’ ๋ฐ˜์˜) ์ด ์™„์„ฑ๋˜๋ฉด ํ”„๋กœ์ ํŠธ๊ฐ€ โ€œ์ œํ’ˆ์ฒ˜๋Ÿผโ€ ๋ณด์ด๊ธฐ ์‹œ์ž‘ํ•จ
  • createdAt์€ โ€œ๋“ฑ๋ก ์‹œ๊ฐ„โ€์ด๊ณ , ์บ˜๋ฆฐ๋” UX๋ฅผ ์œ„ํ•ด์„œ๋Š” ๊ธฐ๋ก ๋‚ ์งœ(logDate) ๊ฐ€ ๋ณ„๋„๋กœ ํ•„์š”ํ•จ
  • DataGrid + Dialog ํŒจํ„ด์€ ์‹ค๋ฌด์—์„œ ์ž์ฃผ ์“ฐ์ด๋Š” ๊ตฌ์กฐ์ด๋ฉฐ, ์ƒํƒœ ๊ด€๋ฆฌ ํฌ์ธํŠธ(editingId)๊ฐ€ ํ•ต์‹ฌ
  • ์บ˜๋ฆฐ๋” UI๋Š” ์ง์ ‘ ๊ตฌํ˜„๋ณด๋‹ค ๊ฒ€์ฆ๋œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ(FullCalendar) ๋ฅผ ์“ฐ๋Š” ๊ฒƒ์ด ์ƒ์‚ฐ์„ฑยท์™„์„ฑ๋„ ๋ชจ๋‘์—์„œ ์œ ๋ฆฌํ•จ

๐Ÿš€ ๋‚ด์ผ ํ•  ์ผ

  • ๋ฐฑ์—”๋“œ์— logDate(LocalDate) ํ•„๋“œ ์ถ”๊ฐ€

  • POST / PUT ์‹œ logDate๋ฅผ ํ•จ๊ป˜ ์ €์žฅํ•˜๋„๋ก API ์ˆ˜์ •

  • ์›” ๋‹จ์œ„ ์กฐํšŒ๋ฅผ ์œ„ํ•œ API ์„ค๊ณ„ (from / to ๊ธฐ๋ฐ˜)

  • FullCalendar์— ๊ธฐ๋ณธ month view ๋ Œ๋”๋ง

    • ๋‚ ์งœ ํด๋ฆญ ์ด๋ฒคํŠธ ์—ฐ๊ฒฐ ์ค€๋น„

๐Ÿงฉ ๋А๋‚€ ์ 

  • ๋‹จ์ˆœ ๊ธฐ๋Šฅ ์ถ”๊ฐ€๋ณด๋‹ค ๊ตฌ์กฐ๋ฅผ ๋ฐ”๊พธ๋Š” ์ž‘์—…(๋ชจ๋‹ฌํ™”, ์บ˜๋ฆฐ๋” ์ „ํ™˜) ์ด ํ›จ์”ฌ ์‚ฌ๊ณ ๋ ฅ์„ ์š”๊ตฌํ•จ
  • ์ง€๊ธˆ ๋‹จ๊ณ„๋Š” โ€œ์ฝ”๋”ฉ ์—ฐ์Šตโ€์ด ์•„๋‹ˆ๋ผ ์ œํ’ˆ ์„ค๊ณ„ ๋‹จ๊ณ„์— ๋“ค์–ด์™”๋‹ค๋Š” ๋А๋‚Œ
  • ๋ฐฉํ–ฅ์„ ์ž˜ ์žก์œผ๋ฉด DailyLog๋Š” ํฌํŠธํด๋ฆฌ์˜ค๋กœ ์ถฉ๋ถ„ํžˆ ์„ค๋“๋ ฅ์ด ์žˆ์Œ

0๊ฐœ์˜ ๋Œ“๊ธ€