#WIL: ๋ชจ๋‹ฌ ๋ฐฑ ์Šคํฌ๋กค ๋ง‰๊ธฐ
ยท
What I Learn
view/edit ๋ชจ๋“œ ๋‘˜ ์ค‘์— ํ•˜๋‚˜๋ผ๋„ true๋ผ๋ฉด document.body.style.overflow = 'hidden' ์˜ต์…˜์„ ์ฃผ๋ ค๊ณ  ํ–ˆ๋‹ค. useEffect์—์„œ [viewTask, editTask]๋ฅผ dependency๋กœ ๋‘๊ณ  view, edit ๋ชจ๋“œ ๋‘˜ ์ค‘์— ํ•˜๋‚˜๋งŒ true๋ฉด ๋ฐฑ ๊ณ ์ •, ๊ทธ ์ด์™ธ์˜ ์ƒํ™ฉ์—์„œ๋Š” ๋ชจ๋‘ auto๋กœ ๋Œ๋ ค์คฌ๋‹ค. useEffect(() => { if (viewTask || editTask) { document.body.style.overflow = 'hidden' } else { document.body.style.overflow = 'auto' } return () => { document.body.style.overflo..
๋ชจ๋‹ฌ์—์„œ CRUD (zustand)
ยท
What I Learn
!! ํˆฌ๋‘๋ฆฌ์ŠคํŠธ์—์„œ ๋ชจ๋‹ฌ๋กœ CRUDํ•˜๊ณ  ์‹ถ์€ ์ƒํ™ฉ !!์ „์— ๋งŒ๋“ค์—ˆ๋˜ ๋ชจ๋‹ฌ์€ ์ฐจ๋ ฅ์‡ผ๋กœ ํ•˜๋‚˜ ํ•˜๋‚˜ ๋งŒ๋“ค์—ˆ์–ด์„œ, ์ด๋ฒˆ์—๋Š” ์ƒํƒœ๊ด€๋ฆฌ๋„ ๋ถ™์ด๋ฉด์„œ ์ข€ ์ƒ๊ฐํ•ด๋ณด๋ฉด์„œ ๋งŒ๋“ค๊ณ  ์‹ถ์–ด์„œ ๋ฐฉ๋ฒ•์„ ๊ณ ๋ฏผํ•ด๋ดค๋‹ค.๊ทธ๋ฆฌ๊ณ  ๊ฐ„๋‹จํ•œ ํ”„๋กœ์ ํŠธ์ด๊ธฐ๋„ ํ•˜๊ณ , ์ฃผ์Šคํƒ ๋“œ ์ข‹๋‹ค๊ณ  ๋งŽ์ด๋“ค ํ•˜์…”์„œ ์–ด๋–ค ์ ์ด ์ข‹์€์ง€ ๊ฒฝํ—˜ํ•ด๋ณด๊ณ ์ž ๋„์ž…ํ–ˆ๋‹ค. ๋ฆฌ๋•์Šค๋ฅผ ์“ฐ๊ธฐ์—” ์ด ํ”„๋กœ์ ํŠธ๊ฐ€ ๋„ˆ๋ฌด ์กฐ๊ทธ๋งฃ๊ณ ,, ์ฌ๋„๋งŒ,,, ์ด๋Ÿฐ ๋А๋‚Œ์ด์—ˆ๋‹ค. ์ผ๋‹จ task๋ฅผ ์ž‘์„ฑํ•˜๋Š” ์•ก์…˜์— ํƒ€์ž…์œผ๋กœ boolean๊ฐ’์„ ๋ถ€์—ฌํ•˜๊ณ  ์•ก์…˜์˜ boolean ๊ฐ’์— ๋”ฐ๋ผ ๋ชจ๋‹ฌ์„ ๋ณด์—ฌ์ฃผ๊ธฐ๋กœ ์ •ํ–ˆ๋‹ค.ํ๋ฆ„์€ ๋Œ€์ถฉ ์ด๋Ÿฐ ๋А๋‚Œ.Create์ž‘์„ฑํ•˜๊ธฐ ํด๋ฆญ -> ๋ชจ๋‹ฌ open ->๋ชจ๋‹ฌ ๋‚ด์—์„œ task(title, detail) ์ž‘์„ฑ ํ›„ ์ œ์ถœํ•˜๊ธฐ ๋ฒ„ํŠผ ํด๋ฆญ ->๋ชจ๋‹ฌ close, ์ž‘์„ฑ๋œ task๊ฐ€ /today ํŽ˜์ด์ง€์˜ ์ปดํฌ๋„ŒํŠธ..