sucoding
@sucoding
Students
4,896
Reviews
277
Course Rating
4.9
์์ฝ๋ฉ์ ์จ๋ผ์ธ๊ณผ ์คํ๋ผ์ธ์ ๋ณํํ๋ฉด์
์ฝ๋ฉ์ ๊ฐ๋ฅด์น๋ ํ๋์ ํ๊ณ ์์ต๋๋ค.
๋ค๋
๊ฐ์ ์คํ๋ผ์ธ ๊ฐ์ ๊ฒฝํ์ ๋ฐํ์ผ๋ก,
๋ ๋ง์ ์ฌ๋๋ค์ด ์ฝ๋ฉ์ ์ฝ๊ณ ์ฌ๋ฏธ์๊ฒ ๋ฐฐ์ธ ์ ์๋๋ก
๋งค์ผ ๊ณ ๋ฏผํ๊ณ , ๋์์์ด ๋
ธ๋ ฅํ๊ณ ์์ต๋๋ค.
ํ์ฌ๊น์ง ๋ค์๊ณผ ๊ฐ์ 4๊ถ์ ์ฑ
์ ์ถํํ๋ฉฐ
ํ๋ฐํธ์๋ ๊ฐ์ ๋ถ์ผ๋ฅผ ์ ๋ํ๊ณ ์์ต๋๋ค:
๋ํ, ์ ํ๋ธ ์ฑ๋์ ํตํด ๋ค์ํ ๋ฌด๋ฃ ๊ฐ์๋ ์ ๊ณตํ๊ณ ์์ต๋๋ค.
๐ ์ง๊ธ ๋ฐ๋ก ๋ฐฉ๋ฌธํด ๋ณด์ธ์
[์ ํ๋ธ ์ฑ๋ ๋งํฌ]
Courses
Reviews
- Learning JavaScript by Focusing on the Essentials
- Learning JavaScript by Focusing on the Essentials
- Learning JavaScript by Focusing on the Essentials
- Learning React.js with TypeScript: Complete Guide from Basics to Latest Technologies
- Learning only the essentials of CSS3
Posts
Q&A
ํ ์ผ ๊ด๋ฆฌ ์ฑ(๋ฉ๋ชจ์ด์ ์ด์ )
์๋ ํ์ธ์. ์์ฝ๋ฉ์ ๋๋ค.Codingbear๋์ ๋ต๋ณ ๋ด์ฉ์ด ๋ง์ต๋๋ค.ํด๋น ๋ถ๋ถ์ด ์๋๋ผ map() ๋ฉ์๋์ฒ๋ผ ๋ฐ๋ณต ๋ ๋๋ง ํ๋ ๋ถ๋ถ์ ์ฝ๋๊ฐ์ด๋ป๊ฒ ๋์ด์๋์ง ํ์ธํด๋ด์ผ ํฉ๋๋ค.sucoding@naver.com์ผ๋ก ์ ์ฒด ์ฝ๋๋ฅผ ์์ถํด์ ๋ณด๋ด์ฃผ์ ๋ ๋ฉ๋๋ค.๊ฐ์ฌํฉ๋๋ค!
- 0
- 2
- 19
Q&A
Web ํ๋ซํผ ๋ฑ๋ก
์๋ ํ์ธ์.์นด์นด์ค ๊ฐ๋ฐ์ ํ์ด์ง๊ฐ ๋ฆฌ๋ด์ผ๋ ์ดํ ์ค์ต์ ์งํํ์๋ ๊ฒฝ์ฐ, ๋ณ๋์ ์น ํ๋ซํผ ๋ฑ๋ก ์์ด ์ ํ๋ฆฌ์ผ์ด์ ๋ง ์์ฑํ์๋ฉด ๋ฉ๋๋ค.์งํ ์์์๋ ๋งํฌ์์ ์ฑ์ ์์ฑํด ์ฃผ์ธ์. https://developers.kakao.com/console/app์ฑ ์์ฑ ํ ๋ฐ๋ก "258. (25.12.07) ์นด์นด์ค ๊ฐ๋ฐ์ ํ์ด์ง ๋ณ๊ฒฝ ๋ด์ฉ ์ ์ฉํ๊ธฐ" ๊ฐ์๋ฅผ ๋ฐ๋ผํด ์ฃผ์ธ์. (ํด๋น ๊ฐ์๋ ์ฑ ์์ฑ ์งํ์ ์ํ์์ ์ดฌ์๋์์ต๋๋ค)์ฐธ๊ณ ์ฌํญํ์ฌ ์์ ์์ ๋ฒํผ ํด๋ฆญ ์ ๋ฐ์์ด ์๋ ๊ฒ์ ์ ์์ ๋๋ค. ๋ฒํผ ํด๋ฆญ ํ ํ์ด์ง ์ด๋ ๊ธฐ๋ฅ์ ์ดํ ๊ฐ์์์ ๋ค๋ฃน๋๋ค."258. (25.12.07) ์นด์นด์ค ๊ฐ๋ฐ์ ํ์ด์ง ๋ณ๊ฒฝ ๋ด์ฉ ์ ์ฉํ๊ธฐ" ๊ฐ์๋ ๋ชจ๋ ๊ฐ๋ฐ ์๋ฃ ํ ์ดฌ์๋์ด ์นด์นด์ค ๋ก๊ทธ์ธ์ด ์๋ํ๋ ๋ชจ์ต์ ๋ณด์ฌ์ค๋๋ค. ์ด๋ "๋ฆฌ๋ด์ผ๋ ์ฌ์ดํธ์์ ์ด๋ ๊ฒ ์ค์ ํ๋ฉด ๋์ค์ ์นด์นด์ค ๋ก๊ทธ์ธ์ด ์ ์ ์๋ํฉ๋๋ค"๋ฅผ ์๋ดํ๊ธฐ ์ํ ์์์ ๋๋ค.ํด๋น ๊ฐ์์์๋ ๋ฆฌ๋ด์ผ๋ ์นด์นด์ค ๊ฐ๋ฐ์ ์ฌ์ดํธ์์ ํค ์ ๋ณด๋ฅผ ์ ๋ ฅํ๋ ๋ฐฉ๋ฒ๋ง ์ฐธ๊ณ ํ์๊ณ , ์ดํ ํ์ต์ ๋จ๊ณ์ ์ผ๋ก ์งํํด ์ฃผ์ธ์.
- 0
- 2
- 21
Q&A
๊ฐ์ ์์ ์ด ์ข ํ์ํด๋ณด์ ๋๋ค.
์๋ ํ์ธ์, 5647kr๋!with ํค์๋๋ ์์ ์ดฌ์ ๋น์์๋ ๋ฌธ์ ๊ฐ ์๋ ํค์๋์์ผ๋,์ ๋ณดํด์ฃผ์ ๋ด์ฉ์ ๋ฐํ์ผ๋ก ํ์ธํ ๊ฒฐ๊ณผ ํ์ฌ๋ deprecated๋ ์คํ์์ ํ์ธํ์ต๋๋ค.ํด๋น ์์์์๋ with ๋ถ๋ถ์ ์ญ์ ํ๊ณ in ๋ถ๋ถ๋ง ๋จ๊ฒจ ์์ ํ ์ฌ์ ๋ก๋ํ์์ต๋๋ค.์์ ์์ฒญ์ ๋ถํธ์ ๋๋ฆฐ ์ ์ํด ๋ถํ๋๋ฆฌ๋ฉฐ,์์คํ ์ ๋ณด ๊ฐ์ฌ๋๋ฆฝ๋๋ค.์ข์ ํ๋ฃจ ๋ณด๋ด์ธ์!
- 1
- 2
- 32
Q&A
ํจ์ ์ ์ ๊ธฐ์ค
์๋ ํ์ธ์ ์ ์ง ์๋!๋ฆฌ์กํธ์์ ํจ์๋ฅผ ์ด๋ ์ปดํฌ๋ํธ์ ์ ์ํด์ผ ํ๋์ง๋ ๋จ์ํ ๊ท์น๋ณด๋ค๋, ํด๋น ํจ์๊ฐ ์ด๋ค ์ญํ ์ ์ํํ๋์ง๋ฅผ ๊ธฐ์ค์ผ๋ก ํ๋จํ์๋ ๊ฒ์ด ๊ฐ์ฅ ์ ์ ํฉ๋๋ค. ์ด๋ฅผ ์ดํดํ์๊ธฐ ์ฝ๋๋ก ์ค๋ช ์ค๊ฐ์ ๊ฐ๋จํ ์ฝ๋๋ฅผ ํจ๊ป ์์ด ์ค๋ช ๋๋ฆฌ๊ฒ ์ต๋๋ค.์ฐ์ , ์ํ๋ฅผ ๋ณ๊ฒฝํ๋ ๋ก์ง์ด๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ํต์ฌ ๋์๊ณผ ๊ด๋ จ๋ ํจ์๋ ๋ณดํต ์์ ์ปดํฌ๋ํธ์ ์ ์ํ๋ ๊ฒ์ด ์ผ๋ฐ์ ์ ๋๋ค. ์๋ฅผ ๋ค์ด ์์ ์ปดํฌ๋ํธ์์ count๋ผ๋ ์ํ๋ฅผ ๊ด๋ฆฌํ๊ณ ์๋ค๋ฉด, ์ด ๊ฐ์ ๋ณ๊ฒฝํ๋ ํจ์ ์ญ์ ์์ ์ปดํฌ๋ํธ์ ๋๋ ๊ฒ์ด ์์ฐ์ค๋ฝ์ต๋๋ค.function Parent() { const [count, setCount] = React.useState(0); const increaseCount = () => { setCount(count + 1); }; return ; } ์ด์ ๊ฐ์ด ์์ ์ปดํฌ๋ํธ๋ ์ํ์ ๊ทธ ์ํ๋ฅผ ๋ณ๊ฒฝํ๋ ํจ์๋ฅผ ํจ๊ป ๊ด๋ฆฌํ๊ณ , ํ์ ์ปดํฌ๋ํธ์๋ ํด๋น ํจ์๋ฅผ props๋ก ์ ๋ฌํฉ๋๋ค. ์ด ๊ตฌ์กฐ๋ ๋ฆฌ์กํธ์ ๋จ๋ฐฉํฅ ๋ฐ์ดํฐ ํ๋ฆ ์์น์ ์ ๋ง์ต๋๋ค.ํ์ ์ปดํฌ๋ํธ์์๋ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ์ ๋ ์์ ์ปดํฌ๋ํธ์์ ์ ๋ฌ๋ฐ์ ํจ์๋ฅผ ํธ์ถํ๊ฒ ๋ฉ๋๋ค. ๋ค๋ง, ์ด ๊ณผ์ ์์ ํ์ ์ปดํฌ๋ํธ ์ ์ฉ ์ด๋ฒคํธ ์ฒ๋ฆฌ ๋ก์ง์ด ํ์ํ๋ค๋ฉด, ํ์ ์ปดํฌ๋ํธ ๋ด๋ถ์ ํจ์๋ฅผ ์ ์ํ๋ ๊ฒ๋ ๋งค์ฐ ์ผ๋ฐ์ ์ธ ํจํด์ ๋๋ค.function Child({ onIncrease }) { const handleClick = () => { console.log("๋ฒํผ์ด ํด๋ฆญ๋์์ต๋๋ค."); onIncrease(); }; return ์ฆ๊ฐ; } ์ ์ฝ๋์์ handleClick ํจ์๋ ํ์ ์ปดํฌ๋ํธ์ UI ์ด๋ฒคํธ๋ฅผ ์ฒ๋ฆฌํ๋ ์ญํ ๋ง ๋ด๋นํ๊ณ ์์ผ๋ฉฐ, ์ค์ ๋ก ์ํ๋ฅผ ๋ณ๊ฒฝํ๋ ์ฑ ์์ ์์ ์ปดํฌ๋ํธ์ increaseCount ํจ์๊ฐ ๊ฐ์ง๊ณ ์์ต๋๋ค. ์ด๋ฌํ ๊ตฌ์กฐ๋ ๊ฐ ์ปดํฌ๋ํธ์ ์ฑ ์์ ๋ช ํํ๊ฒ ๋ถ๋ฆฌํด ์ค๋๋ค.๊ฐ์์์ ํ์ ์ปดํฌ๋ํธ์๋ ํจ์๊ฐ ์ ์๋์ด ์๋ ๊ฒ์ฒ๋ผ ๋ณด์ด๋ ์ด์ ๋ ๋๋ถ๋ถ ์ด์ ๊ฐ์ ์ํฉ ๋๋ฌธ์ ๋๋ค. ์ฆ, ํ์ ์ปดํฌ๋ํธ์์ ์ด๋ฒคํธ๋ฅผ ์ง์ ์ฒ๋ฆฌํ๊ณ , ํ์ํ ๊ฒฝ์ฐ ์์ ์ปดํฌ๋ํธ์ ํจ์๋ฅผ ํธ์ถํ๊ธฐ ์ํด ์ค๊ฐ ๋จ๊ณ์ ํจ์๊ฐ ์กด์ฌํ๋ ๊ฒ์ ๋๋ค.๊ฒฐ๋ก ์ ์ผ๋ก, ์ํ๋ฅผ ๋ณ๊ฒฝํ๊ฑฐ๋ ์ฌ๋ฌ ์ปดํฌ๋ํธ์ ์ํฅ์ ์ฃผ๋ ๋ก์ง์ ์์ ์ปดํฌ๋ํธ์ ์ ์ํ๋ ๊ฒ์ด ๋ฐ๋์งํ๋ฉฐ, ์ด๋ฒคํธ ์ฒ๋ฆฌ๋ UI์ ๋ฐ์ ํ ๋ก์ง์ ํ์ ์ปดํฌ๋ํธ์ ์ ์ํด๋ ์ ํ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ๊ฒฐ๊ตญ ํจ์์ ์์น๋ โ์ด ๋ก์ง์ด ์ด๋ ์ปดํฌ๋ํธ์ ์ฑ ์์ธ๊ฐโ๋ฅผ ๊ธฐ์ค์ผ๋ก ํ๋จํ์๋ฉด ๊ฐ์ฅ ํผ๋ ์์ด ์ค๊ณํ์ค ์ ์์ ๊ฒ๋๋ค.
- 0
- 2
- 44
Q&A
Exclude ์ดํด
์๋ ํ์ธ์!Exclude๋ ๊ฐ์ฒด์ ์์ฑ์ ๋น๊ตํ์ฌ ์ฐจ์ด๋ฅผ ๊ณ์ฐํ๋ ํ์ ์ด ์๋๋ผ, ์กฐ๊ฑด๋ถ ํ์ ์ ๊ธฐ๋ฐ์ผ๋ก T๊ฐ U์ ํ ๋น ๊ฐ๋ฅํ์ง ์ฌ๋ถ๋ฅผ ํ๋จํ์ฌ ํ์ ์ ์ ๊ฑฐํ๊ฑฐ๋ ์ ์งํ๋ ์ญํ ์ ํฉ๋๋ค. ๋ด๋ถ์ ์ผ๋ก Exclude๋ T extends U ? never : T ํํ๋ก ๋์ํฉ๋๋ค.์ง๋ฌธ์ ์ ์๋ ์ฝ๋์์ T5๋ name๊ณผ age ์์ฑ๋ง์ ๊ฐ์ง๊ณ ์์ผ๋ฉฐ, U5๋ ์ฌ๊ธฐ์ ๋ํด gender๋ผ๋ ํ์ ์์ฑ์ ์๊ตฌํฉ๋๋ค. ๋ฐ๋ผ์ T5๋ U5์ ํ ๋น๋ ์ ์๊ณ , ์ด๋ก ์ธํด T5 extends U5 ์กฐ๊ฑด์ ์ฑ๋ฆฝํ์ง ์์ต๋๋ค. ๊ทธ ๊ฒฐ๊ณผ Exclude์ ๊ฒฐ๊ณผ ํ์ ์ never๊ฐ ์๋ T5๊ฐ ๋ฉ๋๋ค.์ด ์ํฉ์ โ๋ ๊ฐ์ฒด์ ์์ฑ์ด ๋ชจ๋ ์ผ์นํ์ง ์๊ธฐ ๋๋ฌธ์ ์ฒซ ๋ฒ์งธ ํ์ ์ด ๋ฐํ๋๋คโ๋ผ๊ณ ์ดํดํ๋ ๊ฒ์ ๊ฒฐ๊ณผ์ ์ผ๋ก๋ ๋ง์ ์ ์์ผ๋, ์ ํํ ๊ฐ๋ ์ ์์ฑ์ ์ผ์น ์ฌ๋ถ๋ฅผ ๋น๊ตํ๋ ๊ฒ์ด ์๋๋ผ ํ ๋น ๊ฐ๋ฅ์ฑ(extends ๊ด๊ณ)์ ๊ธฐ์ค์ผ๋ก ํ๋จํ๋ค๋ ์ ์ ๋๋ค.๋ํ Exclude๋ ์ฃผ๋ก ์ ๋์ธ ํ์ ์์ ํน์ ํ์ ์ ์ ๊ฑฐํ๊ธฐ ์ํ ์ฉ๋๋ก ์ฌ์ฉ๋๋ฉฐ, ๋จ์ผ ๊ฐ์ฒด ํ์ ์ ์ ์ฉํ ๊ฒฝ์ฐ์๋ ์ค์ง์ ์ธ ํ์ฉ๋๊ฐ ํฌ์ง ์์ต๋๋ค. ๊ฐ์ฒด ํ์ ์์ ์ํ๋ ์์ฑ๋ง ์ ํํ๊ฑฐ๋ ํน์ ์์ฑ์ ์ ์ธํ์ฌ ์๋ก์ด ํ์ ์ ์์ฑํ๊ณ ์ ํ ๋์๋ Pick์ด๋ Omit์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ ์ ํฉ๋๋ค.๋ฐ๋ผ์ ์ง๋ฌธ์์ ์ ๋ฆฌํ์ ๊ฒ์ฒ๋ผ, ๊ฐ์ฒด ํ์ ์ ์ผ๋ถ ์์ฑ๋ง์ ๊ธฐ์ค์ผ๋ก ์๋ก์ด ํ์ ์ ๋ง๋ค๊ณ ์ถ์ ๊ฒฝ์ฐ์๋ Pick์ด๋ Omit์ ์ฌ์ฉํ๋ค๊ณ ์ดํดํ์๋ฉด ์ฌ๋ฐ๋ฅธ ๋ฐฉํฅ์ ๋๋ค.
- 0
- 2
- 20
Q&A
fetch๋ ์ฌ์ฉ๋๋๊ฐ
์๋ ํ์ธ์.๋ฉ์ธ์ผ๋ก ์ฌ์ฉํ๋ ํ๋ ์์ํฌ๊ฐ ๋ฆฌ์กํธ๋ผ๋ฉด fetch ๋ณด๋ค๋ axios๋ฅผ ๋ ๋ง์ด ์ฌ์ฉํฉ๋๋ค.ํ์ง๋ง Next.js๋ผ๋ฉด axios ๋ณด๋ค๋ fetch๋ฅผ ๋ ๋ง์ด ์ฌ์ฉํฉ๋๋ค.์ด๋ ๋ ํ๋ ์์ํฌ๊ฐ ์ถ๊ตฌํ๋ ๋ฐฉํฅ์ด ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ธ๋ฐ์. ๐์ด๋ฅผ ์๋ฒฝํ ์ดํดํ๋ ค๋ฉด ๊ฒฐ๊ตญ next.js๊น์ง ๋ฐฐ์์ผ ํ๊ธฐ ๋๋ฌธ์ ์ง๊ธ ๋น์ฅ์ axios๋ฅผ ๋ ๋ง์ด ์ฌ์ฉํ๋๊ตฌ๋๋ผ๊ณ ์ดํดํ๊ณ ๊ณ์ ๋ ๋ฌด๋ฐฉํฉ๋๋ค!๊ฐ์ฌํฉ๋๋ค.
- 0
- 2
- 42
Q&A
์ ์ญ์ํ ๊ด๋ฆฌ ์ ํ ๊ธฐ์ค
์๋ ํ์ธ์.์ ์ญ ์ํ ๊ด๋ฆฌ ๋ฐฉ์์๋ Redux Toolkit, Context API, Zustand๊ฐ ์์ผ๋ฉฐ, ๋ชจ๋ ์ ์ญ์ผ๋ก ์ํ๋ฅผ ๊ด๋ฆฌํ ์ ์๋ค๋ ๊ณตํต์ ์ ๊ฐ์ง๊ณ ์์ต๋๋ค. ๋ค๋ง ๊ฐ ๋๊ตฌ๋ ์ฌ์ฉ ๋ชฉ์ ๊ณผ ์ ํฉํ ํ๋ก์ ํธ ๊ท๋ชจ, ๊ทธ๋ฆฌ๊ณ ์ํ์ ๋ณต์ก๋์ ๋ฐ๋ผ ์ ํ ๊ธฐ์ค์ด ๋ฌ๋ผ์ง๋๋ค.๋จผ์ Context API๋ ๋ฆฌ์กํธ์ ๊ธฐ๋ณธ์ผ๋ก ํฌํจ๋ ๊ธฐ๋ฅ์ผ๋ก, ๋ณ๋์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ค์น ์์ด ์ฌ์ฉํ ์ ์๋ค๋ ์ฅ์ ์ด ์์ต๋๋ค. ์ฃผ๋ก ๋คํฌ ๋ชจ๋์ ๊ฐ์ ํ ๋ง ์ค์ , ๋ก๊ทธ์ธ ์ฌ๋ถ, ์ธ์ด ์ค์ ์ฒ๋ผ ๊ตฌ์กฐ๊ฐ ๋จ์ํ๊ณ ๋ณ๊ฒฝ ๋น๋๊ฐ ๋์ง ์์ ์ํ๋ฅผ ์ ์ญ์ผ๋ก ๊ณต์ ํ ๋ ์ ํฉํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ํ๊ฐ ๋ณต์กํด์ง๊ฑฐ๋ ๊ด๋ฆฌํด์ผ ํ ๋ฐ์ดํฐ๊ฐ ๋ง์์ง ๊ฒฝ์ฐ, ๋ถํ์ํ ๋ฆฌ๋ ๋๋ง์ด ๋ฐ์ํ ์ ์๊ณ ์ ์ง๋ณด์๊ฐ ์ด๋ ค์์ง ์ ์๋ค๋ ํ๊ณ๊ฐ ์์ต๋๋ค. ๋ฐ๋ผ์ ์ ์ญ์ผ๋ก ๊ณต์ ํด์ผ ํ ์ํ๊ฐ ๋จ์ํ๊ณ ๊ท๋ชจ๊ฐ ์์ ๊ฒฝ์ฐ์ ์ ํํ๋ ๊ฒ์ด ๋ฐ๋์งํฉ๋๋ค.Zustand๋ ๋น๊ต์ ๊ฐ๋ณ๊ณ ์ฌ์ฉ๋ฒ์ด ๊ฐ๋จํ ์ ์ญ ์ํ ๊ด๋ฆฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก, ๊ฐ์ธ ํ๋ก์ ํธ๋ ์ค์ ๊ท๋ชจ์ ํ๋ก์ ํธ์์ ์์ฃผ ์ฌ์ฉ๋ฉ๋๋ค. ์ฝ๋ ์์ฑ๋์ด ์ ๊ณ ์ง๊ด์ ์ด๋ฉฐ, ๋ฆฌ๋ ๋๋ง ์ต์ ํ๊ฐ ๊ธฐ๋ณธ์ ์ผ๋ก ์ ๊ณต๋์ด ์์ฐ์ฑ์ด ๋๋ค๋ ์ฅ์ ์ด ์์ต๋๋ค. Context API๋ก๋ ๋ถ์กฑํ์ง๋ง Redux Toolkit์ ์ฌ์ฉํ๊ธฐ์๋ ๋ถ๋ด์ค๋ฌ์ด ๊ฒฝ์ฐ์ ์ข์ ๋์์ด ๋ ์ ์์ต๋๋ค. ๋ค๋ง ํ ๊ท๋ชจ๊ฐ ํฌ๊ฑฐ๋ ์๊ฒฉํ ๊ตฌ์กฐ์ ๊ท์น์ด ํ์ํ ํ๋ก์ ํธ์์๋ ์ผ๊ด์ฑ์ ์ ์งํ๊ธฐ๊ฐ ๋ค์ ์ด๋ ค์ธ ์ ์์ต๋๋ค.Redux Toolkit์ ๋๊ท๋ชจ ํ๋ก์ ํธ๋ ์ฌ๋ฌ ๋ช ์ด ํ์ ํ๋ ํ๊ฒฝ์์ ์ ํฉํ ์ ์ญ ์ํ ๊ด๋ฆฌ ๋๊ตฌ์ ๋๋ค. ์ํ ๊ตฌ์กฐ์ ํ๋ฆ์ด ๋ช ํํ๊ฒ ์ ๋ฆฌ๋๋ฉฐ, ๋น๋๊ธฐ ์ฒ๋ฆฌ, ๋ฏธ๋ค์จ์ด, ๊ฐ๋ฐ์ ๋๊ตฌ ๋ฑ ๋ค์ํ ๊ธฐ๋ฅ์ ์ ๊ณตํ์ฌ ๋ณต์กํ ์ํ ๊ด๋ฆฌ์ ๊ฐ์ ์ ๊ฐ์ง๋๋ค. ์ด๊ธฐ ์ค์ ๊ณผ ํ์ต ๋น์ฉ์ด ์๋์ ์ผ๋ก ๋๋ค๋ ๋จ์ ์ด ์์ง๋ง, ์ฅ๊ธฐ์ ์ผ๋ก ์ ์ง๋ณด์๊ฐ ์ค์ํ ์๋น์ค๋ ์ํ ๋ก์ง์ด ๋ณต์กํ ํ๋ก์ ํธ์์๋ ๊ฐ์ฅ ์์ ์ ์ธ ์ ํ์ด ๋ ์ ์์ต๋๋ค.๊ฒฐ๋ก ์ ์ผ๋ก ํ๋ก์ ํธ์์ ์ด๋ค ์ ์ญ ์ํ ๊ด๋ฆฌ ๋๊ตฌ๋ฅผ ์ ํํ ์ง๋ ์ํ์ ๋ณต์ก๋, ํ๋ก์ ํธ ๊ท๋ชจ, ํ์ ์ธ์, ๊ทธ๋ฆฌ๊ณ ์ ์ง๋ณด์์ ์ค์๋๋ฅผ ๊ธฐ์ค์ผ๋ก ํ๋จํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ๋จ์ํ ์ ์ญ ์ํ ๊ณต์ ์๋ Context API๊ฐ ์ ํฉํ๋ฉฐ, ๋น ๋ฅธ ๊ฐ๋ฐ๊ณผ ๋์ ์์ฐ์ฑ์ด ํ์ํ ๊ฒฝ์ฐ์๋ Zustand๊ฐ ํจ๊ณผ์ ์ ๋๋ค. ๋ฐ๋ฉด, ๋๊ท๋ชจ ์๋น์ค๋ ๋ณต์กํ ์ํ ํ๋ฆ์ ๋ค๋ค์ผ ํ๋ ํ๋ก์ ํธ์์๋ Redux Toolkit์ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ฐ๋์งํฉ๋๋ค. ๋ํ ๋ชจ๋ ํ๋ก์ ํธ์ ๋ฐ๋์ ์ ์ญ ์ํ ๊ด๋ฆฌ๊ฐ ํ์ํ ๊ฒ์ ์๋๋ฏ๋ก, ํ์์ฑ์ ์ถฉ๋ถํ ๊ฒํ ํ ํ ๋์ ํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. (๋ง๋ถ์ด์๋ฉด ์ ๋ ๋๋ถ๋ถ zustand๋ง ์ฌ์ฉํฉ๋๋ค. )
- 0
- 2
- 43
Q&A
์นด์นด์ค webํ๋ซํผ ๋ฑ๋ก
์๋ ํ์ธ์.์ด๋ฒ ์์ ๊ณผ ์น ํ ์ ๊ด๋ จ์ด ์์ต๋๋ค. (์น ํ ๊ธฐ๋ฅ ์์ฒด๋ฅผ ์ฌ์ฉํ์ง ์์ต๋๋ค)ํ์ฌ ๋ฆฌ๋ด์ผ๋ ์นด์นด์ค ๊ฐ๋ฐ์ ์ผํฐ ํ์ด์ง์ ๋์ํ๋ ์์์ด"258. (25.12.07) ์นด์นด์ค ๊ฐ๋ฐ์ ํ์ด์ง ๋ณ๊ฒฝ ๋ด์ฉ ์ ์ฉํ๊ธฐ"์ ์ฌ๋ผ๊ฐ ์ํ์ ๋๋ค.ํด๋น ์์์ ๋ณด์๋ฉด ๋ ๊ฒ ๊ฐ์ต๋๋ค (ํ์ฌ๋ ์์ ๋ด์ฉ๊ณผ ๋ค๋ฅด์ง ์์์ ํ์ธํ์ต๋๋ค.)๊ฐ์ฌํฉ๋๋ค ๐
- 0
- 2
- 58
Q&A
tailwind css๋ ์ธ์ ์ฌ์ฉ๋๋๊ฐ ๋ ๋ค๋ฅธ css์์ ์ฐจ์ด
์๋ ํ์ธ์.Tailwind CSS๋ฅผ ์ธ์ ์ฌ์ฉํด์ผ ํ๋์ง์ ๋ํด ๊ณ ๋ฏผํ์๋ ๊ฒ์ ๋งค์ฐ ์์ฐ์ค๋ฌ์ด ๊ณผ์ ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. ๋ฆฌ์กํธ๋ฅผ ์ฌ์ฉํ๋ค ๋ณด๋ฉด ๊ฐ์๋ ์ค๋ฌด ์์ ์์ Tailwind CSS๊ฐ ์์ฃผ ๋ฑ์ฅํ๊ธฐ ๋๋ฌธ์, ๋ง์น ๊ธฐ๋ณธ ์ ํ์ง์ฒ๋ผ ๋๊ปด์ง ์ ์์ต๋๋ค. ์ค์ ๋ก ์ต๊ทผ ํ๋ก ํธ์๋ ๊ฐ๋ฐ ํ๊ฒฝ์์๋ Tailwind CSS์ ์ฌ์ฉ ๋น๋๊ฐ ๋์ ํธ์ด์ง๋ง, ๊ทธ๋ ๋ค๊ณ ํด์ ํญ์ ์ ๋ต์ด ๋๋ ๊ธฐ์ ์ ์๋๋๋ค.Tailwind CSS๋ ๋น ๋ฅธ ๊ฐ๋ฐ ์๋๊ฐ ์ค์ํ ์ํฉ์์ ํนํ ์ ํฉํ ์ ํ์ ๋๋ค. ํด๋์ค ๊ธฐ๋ฐ์ ์ ํธ๋ฆฌํฐ ์คํ์ผ์ JSX์ ์ง์ ์์ฑํจ์ผ๋ก์จ ๋ณ๋์ CSS ํ์ผ์ ๊ด๋ฆฌํ์ง ์์๋ ๋๊ธฐ ๋๋ฌธ์, ๋์์ธ ์์ ์ด ์ฆ๊ฑฐ๋ ์ด๊ธฐ ๋จ๊ณ์ ํ๋ก์ ํธ, MVP ๊ฐ๋ฐ๊ณผ ๊ฐ์ ํ๊ฒฝ์์ ์์ฐ์ฑ์ ํฌ๊ฒ ๋์ผ ์ ์์ต๋๋ค. ๋ํ ๋์์ธ ๊ท์น์ด ์ด๋ ์ ๋ ์ ํํ๋์ด ์๊ณ ๋ฐ๋ณต๋๋ UI ํจํด์ด ๋ง์ ๊ฒฝ์ฐ์๋ ์ผ๊ด์ฑ์ ์ ์งํ๊ธฐ ์ฝ๋ค๋ ์ฅ์ ์ด ์์ต๋๋ค. ๋ค๋ง JSX ์ฝ๋๊ฐ ๊ธธ์ด์ง ์ ์๊ณ , ์คํ์ผ๊ณผ ๋งํฌ์ ์ด ๊ฐํ๊ฒ ๊ฒฐํฉ๋๋ค๋ ๋จ์ ๋ ํจ๊ป ๊ณ ๋ คํด์ผ ํฉ๋๋ค.CSS Module์ ๋น๊ต์ ์ ํต์ ์ธ CSS ์์ฑ ๋ฐฉ์์ ๊ฐ๊น๊ธฐ ๋๋ฌธ์ ํ์ ๊ณผ ์ ์ง๋ณด์๊ฐ ์ค์ํ ํ๋ก์ ํธ์ ์ ํฉํฉ๋๋ค. ์ปดํฌ๋ํธ ๋จ์๋ก ์คํ์ผ ํ์ผ์ ๋ถ๋ฆฌํ ์ ์๊ณ , ํด๋์ค ์ด๋ฆ ์ถฉ๋์ ์๋์ผ๋ก ๋ฐฉ์งํด ์ฃผ๊ธฐ ๋๋ฌธ์ ์คยท๋๊ท๋ชจ ํ๋ก์ ํธ์์๋ ์์ ์ ์ผ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค. JSX ๊ตฌ์กฐ๋ฅผ ๊น๋ํ๊ฒ ์ ์งํ๋ฉด์ ์คํ์ผ์ ๋ช ํํ ์ญํ ๋จ์๋ก ๊ด๋ฆฌํ๊ณ ์ถ์ ๋ ์ ์ฉํ๋ฉฐ, ํ์ฌ ์ค๋ฌด์์๋ ์ฌ์ ํ ๋ง์ด ์ฌ์ฉ๋๊ณ ์๋ ๋ฐฉ์์ ๋๋ค.Styled Components๋ ์คํ์ผ์ด ์ปดํฌ๋ํธ์ ๋ก์ง์ด๋ ์ํ์ ๋ฐ๋ผ ํฌ๊ฒ ๋ฌ๋ผ์ง๋ ๊ฒฝ์ฐ์ ์ ํฉํฉ๋๋ค. props๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋์ ์ธ ์คํ์ผ์ ์ ์ฉํ ์ ์๊ธฐ ๋๋ฌธ์ ํ ๋ง ์ ํ์ด๋ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ UI ์ปดํฌ๋ํธ๋ฅผ ์ค๊ณํ ๋ ๊ฐ์ ์ ๊ฐ์ง๋๋ค. ๋ค๋ง ๋ฌ๋ ์ปค๋ธ๊ฐ ์๊ณ , ๋ฐํ์ ์ฑ๋ฅ์ด๋ ๋ฒ๋ค ํฌ๊ธฐ ์ธก๋ฉด์์ ๋ถ๋ด์ด ๋ ์ ์์ด ์ต๊ทผ์๋ ์ ํ์ ์ผ๋ก ์ฌ์ฉ๋๋ ์ถ์ธ์ ๋๋ค.์ค๋ฌด์์๋ ํน์ CSS ๋ฐฉ์์ด ๊ณ ์ ์ ์ผ๋ก ์ฌ์ฉ๋๋ค๊ธฐ๋ณด๋ค๋, ํ๋ก์ ํธ์ ์ฑ๊ฒฉ๊ณผ ํ ํ๊ฒฝ์ ๋ฐ๋ผ ์ ํ์ด ์ด๋ฃจ์ด์ง๋๋ค. ๋น ๋ฅธ ๊ฐ๋ฐ๊ณผ ์์ฐ์ฑ์ด ์ค์ํ ์๊ท๋ชจ ํ๋ก์ ํธ์์๋ Tailwind CSS๊ฐ ์ ํฉํ ๊ฒฝ์ฐ๊ฐ ๋ง๊ณ , ์ฅ๊ธฐ์ ์ธ ์ ์ง๋ณด์์ ํ์ ์ด ์ค์ํ ํ๋ก์ ํธ์์๋ CSS Module์ด ์์ ์ ์ธ ์ ํ์ด ๋ ์ ์์ต๋๋ค. ๋ํ ๋์์ธ ์์คํ ์ด๋ ์ํ ๊ธฐ๋ฐ ์คํ์ผ๋ง์ด ์ค์ํ ๊ฒฝ์ฐ์๋ Styled Components๊ฐ ์ ์ฉํ๊ฒ ํ์ฉ๋ ์ ์์ต๋๋ค.๊ฒฐ๊ตญ ์ค์ํ ๊ฒ์ ์ด๋ค ๊ธฐ์ ์ด ์ ํํ๊ณ ์๋์ง๊ฐ ์๋๋ผ, ํด๋น ๊ธฐ์ ์ด ํ์ฌ ์ํฉ๊ณผ ๋ชฉ์ ์ ์ ํฉํ์ง ํ๋จํ๋ ๊ธฐ์ค์ ๊ฐ๋ ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. Tailwind CSS๋ฅผ ํฌํจํ ๋ค์ํ ์คํ์ผ๋ง ๋ฐฉ์์ ๊ฒฝํํด ๋ณด๊ณ , ๊ฐ ๋ฐฉ์์ ์ฅ๋จ์ ์ ์ดํดํ ์ํ์์ ์ํฉ์ ๋ง๋ ์ ํ์ ํ ์ ์๋ค๋ฉด ์ค๋ฌด์์๋ ์ถฉ๋ถํ ๊ฒฝ์๋ ฅ์ ๊ฐ์ง ์ ์์ ๊ฑฐ๋ผ๊ณ ์๊ฐํฉ๋๋ค.
- 0
- 2
- 84
Q&A
์ปดํฌ๋ํธ ๊ทธ๋ฆฌ๊ณ ํด๋ ๊ตฌ์กฐ์ ๋ํด
์๋ ํ์ธ์!๋ฆฌ์กํธ์์ ์ปดํฌ๋ํธ๋ฅผ ๋๋๋ ๊ธฐ์ค์ ํ๋์ ์ ๋ต์ผ๋ก ์ ํด์ ธ ์๊ธฐ๋ณด๋ค๋, ์ฝ๋๋ฅผ ๋ ์ฝ๊ธฐ ์ฝ๊ณ ์ดํดํ๊ธฐ ์ฝ๊ฒ ๋ง๋ค๊ธฐ ์ํ ํ๋จ์ ์ฐ์์ด๋ผ๊ณ ๋ณผ ์ ์์ต๋๋ค. ์ฒ์ ๋ฆฌ์กํธ๋ฅผ ๊ณต๋ถํ์ค ๋ ์ปดํฌ๋ํธ ๋ถ๋ฆฌ๊ฐ ์ด๋ ต๊ฒ ๋๊ปด์ง๋ ๊ฒ์ ๋งค์ฐ ์์ฐ์ค๋ฌ์ด ์ผ์ด๋ฉฐ, ๋๋ถ๋ถ์ ํ์ต์๋ค์ด ๊ฐ์ ๊ณ ๋ฏผ์ ๊ฒช์ต๋๋ค.์ปดํฌ๋ํธ๋ฅผ ๋๋๋ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๊ธฐ์ค ์ค ํ๋๋ ์ญํ ๊ณผ ์ฑ ์์ ๋๋ค. ํ๋์ ์ปดํฌ๋ํธ๋ ๊ฐ๋ฅํ ํ ํ๋์ ์ญํ ์ ์ง์คํ๋ ๊ฒ์ด ์ข์ผ๋ฉฐ, ์๋ก ๋ค๋ฅธ ์ญํ ์ ํ๋ ์ฝ๋๋ค์ด ํ ์ปดํฌ๋ํธ ์์ ์์ฌ ์๋ค๋ฉด ๋ถ๋ฆฌ๋ฅผ ๊ณ ๋ คํด๋ณผ ์ ์์ต๋๋ค. ๋ํ ์ปดํฌ๋ํธ์ ๊ธธ์ด๊ฐ ๊ธธ์ด์ง๊ณ JSX์ ๋ก์ง์ด ๋ณต์กํ๊ฒ ์์ฌ ์ฝ๊ธฐ ์ด๋ ค์์ง๋ค๋ฉด, ์ด ์ญ์ ๋ถ๋ฆฌ๊ฐ ํ์ํ๋ค๋ ์ ํธ๋ก ๋ณผ ์ ์์ต๋๋ค.์ปดํฌ๋ํธ ๋ถ๋ฆฌ๋ ์ค๋ณต๋๋ UI๊ฐ ์์ ๋๋ง ํ๋ ๊ฒ์ ์๋๋๋ค. ์ค๋ณต์ ๋ถ๋ฆฌ๋ฅผ ๊ฒฐ์ ํ๋ ๊ฐํ ์ด์ ์ด๊ธด ํ์ง๋ง, ๊ฐ๋ ์ฑ ํฅ์์ด๋ ์ฝ๋์ ๊ตฌ์กฐ๋ฅผ ๋ช ํํ ํ๊ธฐ ์ํ ๋ชฉ์ ๋ง์ผ๋ก๋ ์ถฉ๋ถํ ์ปดํฌ๋ํธ๋ฅผ ๋๋ ์ ์์ต๋๋ค. ํนํ ํน์ ๋ถ๋ถ์ ์ฝ๋๊ฐ โ์ง๊ธ ์ด ์ปดํฌ๋ํธ์ ํต์ฌ ์ญํ ๊ณผ๋ ์กฐ๊ธ ๋ค๋ฅธ ๊ฒ ๊ฐ๋คโ๋ ๋๋์ด ๋ ๋ค๋ฉด, ๊ทธ ๋ถ๋ถ์ ๋ณ๋์ ์ปดํฌ๋ํธ๋ก ๋ถ๋ฆฌํ๋ ๊ฒ์ด ์ ์ฒด ํ๋ฆ์ ์ดํดํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.์ฒ์๋ถํฐ ์ปดํฌ๋ํธ๋ฅผ ์๊ฒ ๋๋์ด ์ค๊ณํด์ผ ํ๋ค๋ ๋ถ๋ด์ ๊ฐ์ง ํ์๋ ์์ต๋๋ค. ์ค์ ๋ก๋ ํ๋์ ์ปดํฌ๋ํธ๋ก ๊ตฌํ์ ์์ํ ๋ค, ์ฝ๋๊ฐ ์ ์ ๊ธธ์ด์ง๊ณ ๊ด๋ฆฌํ๊ธฐ ์ด๋ ค์์ง ๋ ๋ถ๋ฆฌํ๋ ๋ฐฉ์์ด ๋ ์์ฐ์ค๋ฝ์ต๋๋ค. ์ปดํฌ๋ํธ ๋ถ๋ฆฌ๋ ์ค๊ณ์ ์์ญ์ด๊ธฐ๋ณด๋ค๋ ๋ฆฌํฉํ ๋ง์ ๊ณผ์ ์ ๊ฐ๊น๋ค๊ณ ์๊ฐํ์ ๋ ๋ฉ๋๋ค.ํด๋ ๊ตฌ์กฐ ์ญ์ ์ ํด์ง ์ ๋ต์ ์์ผ๋ฉฐ, ์ด๋ณด์์ผ์๋ก ๋ณธ์ธ์ด ์ฐพ๊ธฐ ์ฝ๊ณ ์ดํดํ๊ธฐ ์ฌ์ด ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ๊ฐ์ฅ ์ข์ต๋๋ค. ํ๋ก์ ํธ์ ๊ท๋ชจ๊ฐ ์ปค์ง๊ธฐ ์ ๊น์ง๋ ๋จ์ํ ๊ตฌ์กฐ๋ก ์์ํ๊ณ , ํ์ํด์ง ๋ ์ ์ง์ ์ผ๋ก ์ ๋ฆฌํด ๋๊ฐ๋ ์ถฉ๋ถํฉ๋๋ค.๋ง์ง๋ง์ผ๋ก ์ปดํฌ๋ํธ ๋ถ๋ฆฌ๊ฐ ๊ณผํ์ง ๋ถ์กฑํ์ง๋ฅผ ํ๋จํ๋ ๊ฐ์ฅ ์ข์ ๊ธฐ์ค์ โ์ฝ๊ธฐ ์ฌ์ด๊ฐโ์ ๋๋ค. ์ปดํฌ๋ํธ๋ฅผ ๋๋์์ ๋ ์คํ๋ ค ํ๋ฆ์ ๋ฐ๋ผ๊ฐ๊ธฐ ์ด๋ ต๋ค๋ฉด ๊ณผํ ๋ถ๋ฆฌ์ผ ์ ์๊ณ , ํ๋์ ํ์ผ์ด ์ง๋์น๊ฒ ๊ธธ๊ณ ๋ณต์กํ๋ค๋ฉด ๋ถ๋ฆฌ๊ฐ ๋ถ์กฑํ ์ํ์ผ ์ ์์ต๋๋ค. ๊ฒฐ๊ตญ ๋ฆฌ์กํธ์์ ์ปดํฌ๋ํธ๋ฅผ ๋๋๋ ๊ธฐ์ค์ ์ ํด์ง ๊ท์น์ด ์๋๋ผ, ์ฝ๋๋ฅผ ์ฝ๋ ์ฌ๋์ด ๋ ์ฝ๊ฒ ์ดํดํ ์ ์๋๋ก ๋ง๋๋ ๋ฐฉํฅ์ด๋ผ๊ณ ์ ๋ฆฌํ ์ ์์ต๋๋ค.
- 0
- 2
- 39






