๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

WEB/REACT23

[React] React๋ฅผ GitHub Page์— ๋ฌด๋ฃŒ ํ˜ธ์ŠคํŒ…ํ•˜๊ธฐ(ํŽ˜์ด์ง€ ๋งŒ๋“ค๊ธฐ) ์˜ค๋Š˜์€ React JS๋กœ ์ž‘์„ฑํ•œ ์ฝ”๋“œ๋ฅผ ์–ด๋–ป๊ฒŒ github page์— ๋ฌด๋ฃŒ๋กœ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ๋Š”์ง€์— ๋Œ€ํ•ด์„œ ๊ณต๋ถ€ํ•ด๋ณด์•˜๋‹ค. ๊ฐ€๋” ๋ธ”๋กœ๊ทธ๋‚˜ ์‚ฌ์ดํŠธ๋“ค์„ ๋ณผ๋•Œ ์ฃผ์†Œ๊ฐ€ github.io๋ผ๊ณ  ์ž‘์„ฑ๋˜์–ด์žˆ๋Š”๊ฑธ ๋งŽ์ด ๋ดค์—ˆ๋Š”๋ฐ, ์ด ํ˜ธ์ŠคํŒ…์— ๋Œ€ํ•ด ์•Œ๊ธฐ ์ „๊นŒ์ง€๋Š” ๊ทธ๋ƒฅ ๊นƒํ—™์—์„œ ๋งŒ๋“ค์–ด๋†“์€ ๋ธ”๋กœ๊ทธ์ธ์ค„๋งŒ ์•Œ์•˜์—ˆ๋‹ค. ์†”์งํžˆ ์ด๊ฑธ ์•Œ๊ณ ๋‚˜๋‹ˆ ์ง€๊ธˆ ์™„์ „ ์‹ ์„ธ๊ณ„๋‹ค๐Ÿ˜ฒ ์ง€๊ธˆ ๋„ˆ๋ฌด ์‚˜๊ฝ‚ํ˜€์„œ ํ”ผ๊ณคํ•œ๋ฐ๋„ ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŒ…์„ ํ•˜๊ณ  ์žˆ๋‹ค. ๋‚ด๊ฐ€ ์˜ค๋Š˜ ๊นƒํ—™ ํŽ˜์ด์ง€๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋งŒ๋“  ์›น์‚ฌ์ดํŠธ๋Š” ์˜ํ™”์†Œ๊ฐœ ์›น์ด๋‹ค. ์œ„์˜ ๋งํฌ๋ฅผ ๋‹ฌ์•„๋†“์€๊ฒƒ๊ณผ ๊ฐ™์ด ๋‚ด๊ฐ€ ๋งŒ๋“  ์‚ฌ์ดํŠธ๋ฅผ ์ผ์‹œ์ ์œผ๋กœ yarn(npm) start๋กœ ์ผœ์„œ ๋งŒ๋“  ์‚ฌ์ดํŠธ๊ฐ€ ์•„๋‹Œ ๊ณ„์†ํ•ด์„œ ๋ณผ ์ˆ˜ ์žˆ๋Š” ์‚ฌ์ดํŠธ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค. ์›น์— ๋“ค์–ด๊ฐ€๋ณด๊ธฐ ๊ท€์ฐฎ์€ ๋ถ„๋“ค์€ ์•„๋ž˜ ์›€์งค์„ ๋ณด๋ฉด ๋ฉ๋‹ˆ๋‹น GitHub Page github p.. 2021. 2. 2.
[React] ContextAPI๋ฅผ ์‚ฌ์šฉํ•ด์„œ TodoList๋งŒ๋“ค๊ธฐ(1) : styled-components ๋ฆฌ์•กํŠธ๋ฅผ ๋‹ค๋ฃจ๋Š” ๊ธฐ์ˆ ์—์„œ๋Š” ํˆฌ๋‘๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“œ๋Š” ์˜ˆ์ œ๋ฅผ ๋งŒ๋“ค์–ด๋ดค์—ˆ๋Š”๋ฐ, ๊ทธ ๋•Œ์™€ ๋‹ค๋ฅด๊ฒŒ ์ด๋ฒˆ์—๋Š” contextAPI๋ฅผ ์ด์šฉํ•ด์„œ ํˆฌ๋‘๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ค์–ด๋ณด์•˜๋‹ค. ์•„์ง contextAPI์— ๋Œ€ํ•ด์„œ ๋ˆ„๊ตฌ์—๊ฒŒ ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ์„๋งŒํผ ์ •๋ฆฌ๊ฐ€ ์•ˆ๋˜์–ด์žˆ๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์–ด์„œ ๋‹ค์‹œ ์ƒˆ๋กœ์šด ๋งˆ์Œ์œผ๋กœ ๊ณต๋ถ€๋ฅผ ํ•ด๋ดค๋‹ค. ๊ทธ๋ž˜์„œ! ์ด๋ฒˆ ํฌ์ŠคํŠธ์—์„œ๋Š” contextAPI์— ๋Œ€ํ•œ ๊ฐœ๋…๋“ค์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•˜๊ณ , ํˆฌ๋‘๋ฆฌ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ๋ณด๋ฉด์„œ ๋‹ค์‹œ ์ •๋ฆฌํ•ด๋ณผ ์ƒ๊ฐ์ด๋‹ค. contextAPI๋ฅผ ์‚ฌ์šฉํ•œ ํˆฌ๋‘๋ฆฌ์ŠคํŠธ ์˜ˆ์ œ๋Š” ๋ฒจ๋กœํผํŠธ๋‹˜์˜ ์ด ๊ธ€์„ ์ฐธ๊ณ ํ•ด์„œ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ๋จผ์ € styled-components๋ฅผ ์‚ฌ์šฉํ•ด์„œ ํˆฌ๋‘๋ฆฌ์ŠคํŠธ๋ฅผ ๊พธ๋ฉฐ์คฌ๋Š”๋ฐ, ๊ฑฐ๊ธฐ์„œ ์‚ฌ์šฉ๋œ ์Šคํƒ€์ผ๋ง์—์„œ ๋‚ด๊ฐ€ ์ž˜ ๋ชฐ๋ž๋˜ ๋ถ€๋ถ„๋“ค์— ๋Œ€ํ•ด ์ ์–ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. createGlobalStyle : ์ด ๊ธฐ๋Šฅ์€ ํŽ˜์ด์ง€ ์ „.. 2021. 1. 31.
[React] ๋Œ“๊ธ€๊ธฐ๋Šฅ ๊ตฌํ˜„ ๐Ÿ“–์š”์ฆ˜ ๋ฆฌ์•กํŠธ๋ฅผ ์–ด๋Š์ •๋„ ๊ณต๋ถ€ํ•˜๋ฉด์„œ ๋‚ด ํž˜์œผ๋กœ ๊ฐ„๋‹จํ•œ ๊ฒฐ๊ณผ๋ฌผ์„ ๋งŒ๋“ค์–ด๋ณด๊ณ  ์‹ถ๋‹ค๋Š” ์ƒ๊ฐ์— ๋ธ”๋กœ๊ทธ? SNS?์™€ ๊ฐ™์€ ํ˜•์‹์˜ ๊ฒŒ์‹œ๋ฌผ๊ณผ ๋Œ“๊ธ€๊ณผ ์ข‹์•„์š”๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ํŽ˜์ด์ง€๋ฅผ ๋งŒ๋“ค๊ณ  ์žˆ๋‹ค. ํ•˜๋‚˜์˜ ์‹ฑ๊ธ€ํŽ˜์ด์ง€๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ๋„ ์ด๋ ‡๊ฒŒ ๋งŽ์€ ์‹œํ–‰์ฐฉ์˜ค๊ฐ€ ํ•„์š”ํ•œ ๊ฑธ ๊ฒช์–ด๋ณด๋‹ˆ, ์•„์ง ๊ฐˆ ๊ธธ์ด ๋งŽ์ด ๋ฉ€๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์—ˆ๋‹ค๐Ÿ˜ฅ ์ด ๊ธ€์€ ์ด๋ฒˆ ํŽ˜์ด์ง€๋ฅผ ๊ตฌํ˜„ํ•˜๋ฉด์„œ ๋‚ด๊ฐ€ ๊ฒช์—ˆ๋˜ ์˜ค๋ฅ˜๋“ค๊ณผ ์ด๋ฅผ ํ•ด๊ฒฐํ•œ ๋ฐฉ๋ฒ•๊ณผ ์™œ ๊ทธ๋ ‡๊ฒŒ ์จ์•ผ๋งŒํ•˜๋Š”์ง€ ๊ทธ ์ด์œ ์— ๋Œ€ํ•ด์„œ ์จ๋ณด๋ ค๊ณ ํ•œ๋‹ค. ์ด๋ฒˆ์— ๊ฒช์€ ์˜ค๋ฅ˜๋Š” inputํƒœ๊ทธ๋กœ ์ด๋ฆ„๊ณผ ๋Œ“๊ธ€์˜ ๋‚ด์šฉ์„ ์ž…๋ ฅ๋ฐ›์•„ ๋Œ“๊ธ€์„ ๋„์šฐ๋Š” ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๊ณ  ์žˆ์—ˆ๋Š”๋ฐ, ์ž…๋ ฅ๋ฐ›์€ ๋‚ด์šฉ๋“ค์ด ๋œจ์ง€ ์•Š๊ณ  ๋นˆ ์นธ์ด ๋œจ๋Š” ๊ฒƒ์ด์—ˆ๋‹ค. ๋Œ“๊ธ€์˜ ์ž…๋ ฅ์„ ๋ฐ›๋Š” ์ฝ”๋“œ๊ฐ€ ์ž‘์„ฑ๋˜์–ด์žˆ๋Š” commentInput.js์˜ ์ฝ”๋“œ๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค. import React, .. 2021. 1. 25.
[React] ํˆฌ๋‘๋ฆฌ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ๊ตฌ์กฐ&์ฝ”๋“œ ๋ถ„์„ ๐Ÿ“–๋ฆฌ์•กํŠธ๋ฅผ ๋‹ค๋ฃจ๋Š” ๊ธฐ์ˆ ์„ ํ†ตํ•ด ๊ณต๋ถ€ํ•œ ๋‚ด์šฉ์„ ๋ฐ”ํƒ•์œผ๋กœ ์ž‘์„ฑํ•œ ํฌ์ŠคํŠธ์ž…๋‹ˆ๋‹ค.๐Ÿ“– ์˜ค๋Š˜์€ ๊ทธ๋™์•ˆ ๋ฐฐ์› ๋˜ ์ปดํฌ๋„ŒํŠธ๋“ค์„ ์ค‘์‹ฌ์œผ๋กœ ํ•  ์ผ์„ ์ž‘์„ฑํ•˜๊ณ  ๊ธฐ๋กํ•˜๋Š” ํˆฌ๋‘๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ค์–ด๋ณด์•˜๋‹ค. ์ฒ˜์Œ์œผ๋กœ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์™„์„ฑ๋œ ํ•œ ํŽ˜์ด์ง€๋ฅผ ๋งŒ๋“ค์–ด๋ณด๋Š” ๊ฑฐ๋ผ ์˜ˆ์ œ๋ฅผ ๋”ฐ๋ผํ•˜๋ฉด์„œ๋„ ์ปดํฌ๋„ŒํŠธ๊ฐ„์˜ ๊ตฌ์กฐ์™€ ์„ธ์„ธํ•˜๊ฒŒ ์“ฐ์ด๋Š” ์†์„ฑ๋“ค์— ๊ด€ํ•ด ๋” ์ž์„ธํ•˜๊ฒŒ ์•Œ๊ณ  ์‹ถ์—ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ , ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š”๋ฐ ์žˆ์–ด ๊ถ๊ธˆํ•œ ๋ถ€๋ถ„๋“ค์ด ๋งŽ์ด ์žˆ์–ด์„œ ์ •๋ฆฌํ•ด๋ณด์•˜๋‹ค. ์ผ๋‹จ ์ •๋ฆฌํ•œ ๋ถ€๋ถ„์€ ํˆฌ๋‘๋ฆฌ์ŠคํŠธ์˜ ์ปดํฌ๋„ŒํŠธ ๊ตฌ์กฐ import cn from {classnames}; ๋ฆฌ์•กํŠธ๋กœ ๋งŒ๋“  ํˆฌ๋‘๋ฆฌ์ŠคํŠธ ์ฝ”๋“œ ์›๋ž˜๋Š” ์ฝ”๋“œ๋ฅผ ๋‹ค ๋”ฐ๋กœ ์˜ฌ๋ฆฌ๋ ค๊ณ  ํ–ˆ์ง€๋งŒ, ๋งŒ๋“  ํŒŒ์ผ๋„ ๋งŽ๊ณ  ํ•˜๋‹ค๋ณด๋‹ˆ ๊ฐ€๋…์„ฑ์ด ๋–จ์–ด์งˆ ๊ฒƒ ๊ฐ™๋‹ค๋Š” ํŒ๋‹จํ•˜์— ๊นƒํ—™์„ ์˜ฌ๋ฆฌ๋Š” ๊ฒŒ ๋” ๋‚˜์„ ๊ฒƒ ๊ฐ™๋‹ค. github.com/MinJoo-.. 2021. 1. 11.
[React] ํ›…(Hooks) ๐Ÿ“–๋ฆฌ๋‹ค๊ธฐ, ๊ณต์‹๋ฌธ์„œ, ๋…ธ๋งˆ๋“œ ์ฝ”๋”, ์ œ๋กœ์ดˆ๋‹˜์˜ ์˜์ƒ์„ ๋ณด๊ณ  ์ œ๊ฐ€ ์ดํ•ดํ•œ ๋‚ด์šฉ์„ ๋ฐ”ํƒ•์œผ๋กœ ์ •๋ฆฌํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.๐Ÿ“– ๋ฆฌ๋‹ค๊ธฐ์—์„œ 8์žฅ์— ํ›…์— ๋Œ€ํ•œ ์„ค๋ช…์ด ๋‚˜์˜จ๋‹ค. ์˜ˆ์ œ๋ฅผ ๋”ฐ๋ผํ•˜๋ฉด์„œ ํ•ด๋ณด์•˜์ง€๋งŒ 8์žฅ๊นŒ์ง€ ํœ˜๋šœ๋ฃจ๋งˆ๋šœ๋ฃจ ๋‹ฌ๋ ค์„œ ๊ทธ๋Ÿฐ๊ฐ€ ๋‡Œ์— ๊ณผ๋ถ€ํ™”๊ฐ€ ์™€์„œ ๋จธ๋ฆฌ๊ฐ€ ๋ฐ›์•„๋“ค์ด๊ธฐ๋ฅผ ๊ฑฐ๋ถ€๋ฅผ ํ•˜๋Š” ๊ฒƒ ๊ฐ™์•˜๋‹ค. ํ•˜์ง€๋งŒ, 8์žฅ๊นŒ์ง€ ํ–ˆ์„๋•Œ ์ด ๋ถ€๋ถ„์ด ๋น„์ค‘์ด ์žˆ๊ณ  ์ค‘์š”ํ•˜๋‹ค๊ณ  ๋Š๊ปด์กŒ๊ธฐ ๋•Œ๋ฌธ์— ํ•˜๋ฃจ ์‰ฌ๊ณ  ํ•˜๋ฃจ ๋‹ค์‹œ ๋‚  ์žก์•„์„œ ๊ณต์‹๋ฌธ์„œ์™€ ์ฑ…, ์˜์ƒ์„ ๊ฐ€๋ฆฌ์ง€ ์•Š๊ณ  ์ฐพ์•„๋ณธ ๊ฒฐ๊ณผ ์–ด๋Š ์ •๋„? ์กฐ๊ธˆ์€? ์ดํ•ด๋ฅผ ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.๐Ÿ˜ฅ ์šฐ์„  ์ œ์ผ ์ค‘์š”ํ•œ ํฌ์ธํŠธ๋Š” ๊ฐœ๋…์„ ์–ด๋Š ์ •๋„ ์ดํ•ด๋ฅผ ํ•˜๊ณ  ์˜ˆ์ œ๋ฅผ ๋‹ค์‹œ ํ•ด๋ณด๋Š”๊ฒƒ!์ด ์ดํ•ด๋ฅผ ํ•˜๋Š” ๋ฐ ๋งŽ์€ ๋„์›€์ด ๋๋‹ค. ๋˜, ๋…ธ๋งˆ๋“œ ์ฝ”๋”๋‹˜์˜ ์˜์ƒ๊ณผ ์ œ๋กœ์ดˆ๋‹˜์˜ ํ›…์— ๋Œ€ํ•œ ์˜์ƒ์ด ๋„์›€์ด ๋งŽ์ด ๋๋‹ค. ํ›…์€ ํ•จ์ˆ˜ํ˜• ์ปดํฌ๋„ŒํŠธ์—์„œ state.. 2021. 1. 6.
[React] ์Šคํฌ๋กค๋ฐ•์Šค ์ฝ”๋“œ์— ์œ„์•„๋ž˜ ์ด๋™ ๊ธฐ๋Šฅ ๊ตฌํ˜„ ๐Ÿ“–๋ฆฌ์•กํŠธ๋ฅผ ๋‹ค๋ฃจ๋Š” ๊ธฐ์ˆ ๐Ÿ“– ์ฑ…์— ์žˆ๋Š” ref์˜ˆ์ œ์ธ ์Šคํฌ๋กค ๋ฐ•์Šค ์กฐ์ž‘ ์ฝ”๋“œ๋Š” '๋งจ๋ฐ‘์œผ๋กœ'๋ผ๋Š” ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ์ž๋™์œผ๋กœ ์Šคํฌ๋กค์„ ๋งจ ๋ฐ‘์œผ๋กœ ๋‚ด๋ ค๊ฐ€๊ฒŒ ํ•ด์ฃผ๋Š” ๋‚ด์šฉ์ด๋‹ค. ํ•˜์ง€๋งŒ, ๋‚˜๋Š” ์—ฌ๊ธฐ์„œ ์‘์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅผ ๋•Œ๋งˆ๋‹ค ์Šคํฌ๋กค ๋ฐ•์Šค๊ฐ€ ์œ„, ์•„๋ž˜๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ตฌํ˜„ํ•˜๊ณ  ์‹ถ์—ˆ๋‹ค. ๋ฆฌ์•กํŠธ๋ฅผ ๋‹ค๋ฃฌ์ง€ ์–ผ๋งˆ ๋˜์ง€ ์•Š์•„ ์ฒ˜์Œ์—๋Š” ์ด๋ฏธ ์ž‘์„ฑ๋˜์–ด์ ธ ์žˆ๋Š” ์ฝ”๋“œ๋ฅผ ์–ด๋””์„œ๋ถ€ํ„ฐ ์† ๋Œ€์•ผ ๋ ์ง€ ๋ง‰๋ง‰ํ–ˆ์ง€๋งŒ, ์•ž์—์„œ ํ–ˆ๋˜ ์˜ˆ์ œ๋“ค์„ ์ด์šฉํ•ด์„œ ๊ณง์žฅ ๋ฐฉ๋ฒ•์„ ์ฐพ์•„๋‚ผ ์ˆ˜ ์žˆ์—ˆ๋‹ค. ์ผ๋‹จ ์Šคํฌ๋กค์ด ๋‚ด๋ ค๊ฐ€์žˆ์„๋•Œ๋Š” ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ์˜ฌ๋ผ์™€์•ผํ•˜๊ณ , ์˜ฌ๋ผ๊ฐ€์žˆ์„ ๋•Œ๋Š” ๋‚ด๋ ค์™€์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ƒํ™ฉ์— ๋”ฐ๋ผ ๊ฐ’์ด ๋‹ฌ๋ผ์ง€๊ธฐ ๋•Œ๋ฌธ์— ์ด์— ๋Œ€ํ•œ ์ดˆ๊ธฐ๊ฐ’๋“ค์„ ์„ค์ •ํ•ด์ค˜์•ผํ•œ๋‹ค. ์ด์— ๋”ฐ๋ผ ์•ž ์žฅ์—์„œ์˜ ์˜ˆ์ œ๋“ค์„ ๋– ์˜ฌ๋ ค์„œ state์— ๋Œ€ํ•œ ์ดˆ๊ธฐ๊ฐ’์„ App.js์— ์„ค์ •ํ•ด์ฃผ์—ˆ๋‹ค. s.. 2021. 1. 2.
๋ฐ˜์‘ํ˜•