ํญํด๋ฅผ ์์ํ๊ธฐ ์ ๋งค์ผ ๋ฒจ๋ก๊ทธ๋ฅผ ์์ฑํ๊ฒ ๋ ธ๋ผ ๋ค์งํ๋ค. ์ฒซ ๋ ๋ถํฐ ์๊ธฐ๋ค. ๊ธด์ฅ๊ฐ ๋๋ฌธ์ผ๊น? ์๊ฐ๋ณด๋ค ๋์ ์ง์ค๋ ฅ์ ๋ชธ์ด ๋๋๋๋ณด๋ค. ๊ธ์ ์ฐ๋ ์ด ์๊ฐ ์๋ฉ์ด์ ํ๋ฆฌ, ์ด๊นจ ๋ฑ๋ฑ ์ํ์ง ์์ ๊ณณ์ด ์๋ค. ํ๋ฃจํ๋ฃจ ๋ค์ ํ ์ ์์ ์ค ์์๋๋ฐ,,, ๊ทธ๋ฅ ๊ทธ ๋์
์ฒซ์งธ ๋ TIL์ ์ ์ ํ 1์ฃผ์ฐจ ํ๋ก์ ํธ ๋ง๋ฌด๋ฆฌ์ ์น๊ฐ๋ฐ ๊ฐ์ ์๊ฐ์ ์น์ฌ ๊ฒฐ๊ตญ WIL๋ก ๋ฐ๋ก ๊ฑด๋์ค๊ฒ ๋์๋ค..ํ๋ก์ ํธ ์ ์ถ์ผ์ ํ์ด์ 2์ฐจ ์ ์ข ํ์ ์ฆ์ผ๋ก ์จ์ข ์ผ ๋ํต์ ์๋ฌ๋ ธ์ง๋ง ํ์๋ค์ ๋์์ผ๋ก ๋ฌด์ฌํ ์ ์ถํ ์ ์์๋ค..์๋ก ์ด ํ๊ณ๋ก ๊ธธ์ด์ก๋๋ฐ.. ์ฐ์ 1์ฃผ
ํ์ฑํ ํ๊ฐ์์ ํจ๊ป ์ฃผํน๊ธฐ ๊ณผ์ ์ด ์์๋์๋ค. ์ถ์ ์ ๋ฌผ(?)๋ก ํ์ฑํ React ๊ฐ์๋ฅผ ๋ฐ๊ณ ์ค๋ ๋ ๋ง์๊ณผ ํจ๊ป ์๊ฐ์ ์์ํ๋ค. ๊ทธ๋ฌ๋ homebrew๋ฅผ ์ด์ฉํ nvm ์ค์น์์๋ถํฐ ๋ฐ๋ชฉ์ด ์กํ๋ฒ๋ ธ๋ค. ์ฌ์ค 1์ฃผ์ฐจ ๊น์ง๋ ์๋์ฐ ๋ฐ์คํฌํ๋ง ์ฌ์ฉํ์๋ค. ํํฐ๋๊ป์ ๋งฅ
๋ฒ์จ ์ถ์ ์ฐํด๊ฐ ํ๋ฃจ ๋ฐ์ ๋จ์ง ์์๋ค. ๋ฆฌ์กํธ ์ฃผํน๊ธฐ ์คํ ์นดํก๋ฐฉ์ผ๋ก๋ถํฐ ์์์ผ์ ์ด๋ฆฐ ๊ธฐ๋ณธ ๊ฐ์๋ ์์์ผ ๋ฟ์ด๋ผ๋ ์์์ ๋ค์๋ค. ์ด ๋ ์ด ์ผ๋ง ๋จ์ง ์์๋ค๋ ๊ฒ์ผ๋ฅธ ์๊ฐ์ ์ง๋ฐฐ๋ ํ์ ๊ฒฐ๊ตญ ์ด์ ์์ผ ์ฑ ์์ ์์ ๋์ ์ด๊ณ ์๋ค.. ๊ทธ๋๋ ์๋ฌด ๊ฒ๋ ํ์ง ์์
React ๊ฐ์ ์๊ฐ ์ค์ ์ฝ์์ฐฝ์ ์ด์ฉํ ์ค์ต์ด ๋ง์๋๋ฐ, ๊ณ์ ์ ์ ์๋ ์๋ฌ ๋ฉ์์ง๊ฐ ํ์๋์ด ๊ฑฐ์ฌ๋ ธ๋ค. ์ ํ๋ธ์์ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ฐพ์ TIL์ ์ ์ด ๋๋๋ค.์ ์ด๋ฏธ์ง์ฒ๋ผ ์์ค๋งต ๋ก๋ ์คํจ ์ค๋ฅ ๋ฉ์์ง๊ฐ ๋จ๋ ๊ฒฝ์ฐ ์ฝ์์ฐฝ์ด ๊น๋ํ์ง ์์ ๋ณด๊ธฐ์ ๋ถํธํ๋ฐ, ๊ฐ๋ฐ์๋ชจ
ํ์ดํ(=>) ๋ค์ ๊ดํธ๊ฐ ์ค๊ดํธ( {} )์ผ ๋๋ ์ค๊ดํธ ์์ ๋ฐ๋์ retrun ์ด ํฌํจ๋์ด์ผ ํ๋ค. const ๋ค์ ๋ณ์์ return ๋๋ ๊ฐ์ด ๋ค์ด๊ฐ๊ธฐ ๋๋ฌธ์, ๋ง์ฝ return ๊ฐ์ด ๋น์ด์๋ค๋ฉด ๋ณ์ do_something ์๋ undefined ๊ฐ ๋ค์ด๊ฐ๊ฒ
React ๊ธฐ์ด๋ฐ ์์ ์ ๋ค์ผ๋ฉด์ JavaScript ๊ธฐ์ด ์ง์ ๋ถ์กฑ์ ๋ํ ์์ฌ์์ด ์ปค์ก๋ค. ๊ฐ๋จํ ์์๋ฅผ ๋ ์ค๋ช ์ ๋ฃ๋๋ผ๋ JavaScript์ ๋ํ ๊ฐ์ด ์ ํ ์๋ ์ํ๋ค ๋ณด๋ ์ฌ์ด ์ค๋ช ๋ ์ด๋ ต๊ฒ ๋๊ปด์ง๊ธฐ ์ผ์ค์๋ค. ๊ทธ๋์ ์์ํ JavaScript์ ์นํด์ง๊ธฐ
๋ฒ์จ ํญํด 2์ฃผ์ฐจ! ํ๋ฃจ๊ฐ ๋ค๋ฅด๊ฒ ๋ง์ด ๋ฐฐ์ฐ๊ณ ์์ง๋ง, ๊ทธ ๋ณด๋ค ๋ชจ๋ฅด๋ ๊ฒ์ด ๋ ๋ง์ด ์๊ฒจ๋ฒ๋ ธ๋ค. ์ค๊ฐ์ ๋ ์ฐํด๋ก ๋์จํด์ง ๋์๊ฒ ์ฃผํน๊ธฐ ๊ธฐ๋ณธ์ฃผ์ฐจ๋ ๊ฝค๋ ํ๋ค๊ฒ ๋ค๊ฐ์๋ค. React๋ฅผ ํญํด์ ์์์ผ ์ฒ์ ์ ํ๊ธฐ ๋๋ฌธ์ ํ๋ค์๋ ์ ๋ ์์ง๋ง ๊ฐ์๋ฅผ ๋ค์ผ๋ฉด์ ๋์ฑ ์ฒด๊ฐ๋
2์ฃผ์ฐจ WIL์ ์ธ ๋ ๊น์ง๋ง ํด๋ ๋ชฐ๋๋ค. ๋ด๊ฐ ์์ค๋ ์ ๊ฑธ๋ฆด ์ค...๐คฎ ๊ฒฐ๊ตญ ์์์ผ๋ถํฐ ๊ฐ์ธ ๊ณผ์ ์ ๋์ ํ๋ คํ๋ ๋์ ๊ณํ์ ๋์ด ํธ๊ธฐ๋ ์ ์ ๋ง์ ๋ด๋ฆฌ๊ณ ๋ง์๋ค. 1~2๋ ๋ง๋ค ์ฃผ๊ธฐ์ ์ผ๋ก ์์ฅ๋ณ์ด ๋๋๋ฐ ์ด๊ฑด ๊ฒช์ ๋ ๋ง๋ค ์ฐธ ๊ณ ์ญ์ด๋ค. ์ฌํด๋ ์ ๋์ด๊ฐ๋ ํ๋๋
๋ฆฌ์กํธ ์ฌํ๋ฐ ์๊ฐ์ด ์ฝ์ง ์๋ค. ์ฉ์ด๋ ์ด๋ ต์ง๋ง ๊ธฐ๋ณธ์ ์ธ ์ดํด๋ ๋ง์ด ๋ถ์กฑํ ์ํ๋ผ ๋จ์ํ ์ฝ๋๋ง ๋ฐ๋ผ ์น๋ ์์ค์ด๋ค. ๋ง์ด ๋ถ์กฑํ๋ค๊ณ ๋ ์๊ฐํ๊ณ ์์์ง๋ง ๋ ๋ ธ๋ ฅํด์ผํ ํ์๋ฅผ ๋๋ผ๊ฒ ๋๋ ์์ ์ด๋ค. ํ์ ๋ถ๋ค๋ ๋น์ทํ ์ด๋ ค์์ ๊ฒช๊ณ ๊ณ์ จ๋๋ฐ, ๊ณต๋ถ์ ๋์์ด ๋๋ ์ฌ
๋งฅ๋ถ์ด ๋ง์ฝ์ด๋ค... 2018 Macbook Pro 15์ธ์น ๋ชจ๋ธ์ธ๋ฐ ์ธ๋ถ ๋ชจ๋ํฐ ์ฐ๊ฒฐ๋ง ํ๋ฉด kernal_task ํ๋ก์ธ์ค๊ฐ CPU ์ ์ ์จ์ ๊ณผํ๊ฒ ์ก์๋จน๋๋ค. ๋ฐ์ด ์ด์๊ฐ ์์๋ ๋ชจ๋ธ์ด๊ธด ํ์ง๋ง ์จ๋ ๊ด๋ฆฌ ํ๋ต์๊ณ CPU ์ ์ ์จ์ 700% ๊น์ง ์ก์๋จน๋ ๊ฑด ๋๋ฌดํ๊ฑฐ
๋ฐ์์๋ ์์ด ๋ณด์ด์ง ์๊ณ , ์์์๋ง ๋ฐ์ ๋ณผ ์ ์๋ค.
๊ธฐ์กด package.json ํ์ผ์ ์๋ก ์ค์นํ ํจํค์ง๋ค์ด ๊ธฐ๋ก ๋ package.json ์ ๋ฎ์ด์ด๋ค.ํฐ๋ฏธ๋์ yarn install ์ ์ ๋ ฅํ๋ฉด ๋์ฒด ๋ package.json ํ์ผ์ ๊ธฐ๋ก ๋ ํจํค์ง๋ค์ด ์ค์น๋๋ค.์ง๊ธ์ ์ค์นํ ํจํค์ง๋ค์ด ๋ง์ง ์์์ ๋ณ๊ฒฝ๋ ํจํค์ง๋ค
์ฃผํน๊ธฐ ํ๊ณ ์ ๋ .. ํ๋ํ๋ ๋ฆฌ์กํธ ์ฌํ์ฃผ์ฐจ๊ฐ ๋ง์ ๋ด๋ ธ๋ค. ์ค๋ ์ค์ ์ ํ ๊ณผ์ ๋ก Wrap-up Assignment๊ฐ ์ฃผ์ด์ก๋๋ฐ, ํ์ ๋ถ๋ค๊ณผ ์ ๋ฆฌํ๋ ๊ฐ๋ ๋ค์ ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํด๋ณด๊ณ ์ ํ๋ค.์ฟ ํค: ํด๋ผ์ด์ธํธ(๋ธ๋ผ์ฐ์ ) ๋ก์ปฌ์ ์ ์ฅ๋๋ ํค์ ๊ฐ์ด ๋ค์ด๊ฐ ์์ ๋ฐ์ดํฐ ํ
๋ฒ์จ 4์ฃผ์ฐจ...! ์๊ฐ์ด ์ ๋ง ๋น ๋ฅด๊ฒ ๊ฐ๋ค. ๋ฏธ๋ ํ๋ก์ ํธ๋ฅผ ์๋๊ณ React์ ์ ์ฒด์ ์ธ ๊ฐ๋ ๋ ๋ค๋ฃฐ ๊ฒธ ๋ณต์ต ์ค์ด์๋๋ฐ, ๋ง์นจ WIL ํค์๋๊ฐ ์ฃผ์ด์ ธ์ ๊ฐ๋จํ๊ฒ ๋จ๊ฒจ๋ณธ๋ค.React ๊ธฐ๋ฐ์ ์น ํ์ด์ง๋ ํ๋์ HTML ํ์ผ ์์ ์ฌ๋ฌ ๊ฐ์ Components๋ก ๊ตฌ์ฑ๋
Grid 3X3 ์ ๋ ฌ
์๋์ฒ๋ผ yarn์ ์ด์ฉํด ์ค์น๋ ๊ฐ๋ฅํ์ง๋ง, nvm์ ์ฌ์ฉํ๊ณ ์๋ค๋ฉด ์์ ๊ฐ์ด npm์ ์ด์ฉํด ์ ์ญ ์ค์น๋ฅผ ๊ถ์ฅํ๋ค.port ๋ฒํธ๋ React port ๋ฒํธ์ ๋ค๋ฅด๊ฒ ์ค์ ํด์ฃผ๋ฉด ๋๋ค. ๋ณดํต 4000๋ฒ์ด๋ 3001๋ฒ์ผ๋ก ์ค์ ํ๊ณ ๋ ํ๋ค.
์ฃผํน๊ธฐ ๊ธฐ๋ณธ ์ฃผ์ฐจ์ ์ฌํ ์ฃผ์ฐจ๋ฅผ ๊ฑฐ์ณ ๋๋์ด Front์ Back์ ๋ง๋จ์ด ์ฑ์ฌ๋์๋ค. ์์ง React์ ๊ธฐ์ด๋ ๋ค์ง์ง ๋ชปํ๊ณ ์์ํ ํ๋ก์ ํธ๋ผ ๊ฑฑ์ ์ด ๋งค์ฐ ๋ง์๋๋ฐ, ๊ฑฑ์ ํ๋ ๊ฒ ๋ณด๋ค ํจ์ฌ ์ด๋ ค์ ๋ค(?)๐ ์ง๊ธ ๋๋์ ๋ณด๋, ์์ด์ด ํ๋ ์๊ณผ API ์ค๊ณ ๋จ๊ณ์์๋ถํฐ
ํญํ ๊ฐ์ ๋ฏธ๋ ํ๋ก์ ํธ๊ฐ ๋ง๋ฌด๋ฆฌ ๋์ง ํ๋ฃจ๋ ์ฑ ์ง๋์ง ์์ ๋ค์ ๋ฌ๋ฆฌ๊ฒ ๋ ํด๋ก ์ฝ๋ฉ ํ๋ก์ ํธ๊ฐ ๋ง๋ฌด๋ฆฌ ๋์๋ค. ์ด๋ฒ ์ฃผ๋ ๋๋ง์ ์ค์ ํ๋ก์ ํธ๋ฅผ ์๋๊ณ ๊ธฐ๋ณธ๊ธฐ๋ฅผ ๊ผญ ๋ค์ง๊ฒ ๋ค๋ ๋ง์์ผ๋ก ์ํ์๋ค. ์ค๋ ฅ์ด ๋ง์ด ๋ถ์กฑํ ์ํ๋ผ ์ค์ ์ฃผ์ฐจ์ ์์ ์กฐ๊ธ์ด๋ผ๋ ๋ ๋ง์ ์ฝ๋
ํ๋ก์ ํธ๊ฐ ์๋ ํด๋์ ๊ฒฝ๋ก๋ก ๋ค์ด๊ฐ ๋ค์ 'code .' ์ ์ ๋ ฅํ๋ฉด ๋๋๋ฐ, ์ฌ์ ์ vscode ์ปค๋งจํธ ํ๋ ํธ ํด์์ ๋ช ๋ น์ด ์ถ๊ฐ๋ฅผ ํด์ฃผ์ด์ผ ํ๋ค.command + shift + p ๋ก vscode ์ปค๋งจ๋ ํ๋ ํธ๋ก ์ง์ , shell command: install '
Error Messege : Could not find router reducer in state tree, it must be mounted under "router"history ํจํค์ง ๋ฒ์ ๋ฌธ์ ์๋ค...history ๋ฒ์ ์ฌ์ค์น
๋ชจ์ ๋ง๋ค๊ธฐ ํ์ด์ง ์์ ๋ชจ์ ์๊ฐ ์์ฑ ํผ์ ์ผ๋ฐ ํ ์คํธ ํ๋๋ก ๋ง๋ค์์๋ค. ๊ทธ๋ฐ๋ฐ ํ ํ์ ๋์ค์ ๋ชจ์ ์๊ฐ์ ๋ค์ด๊ฐ ๋ด์ฉ์ด ์ถ๊ฐ๋๋ฉด์ ํญ๋ชฉ์ด ์ฌ๋ฌ๊ฐ๋ก ๋์ด๋ฌ๋ค. ์ผ๋ฐ ํ ์คํธ ํ๋๋ก๋ ๋ด์ฉ์ ์์ฑํ๊ธฐ์๋ ์ด๋ํ๊ธฐ์๋ ๋ถํธํด์ง ๊ฒ์ด ๋ปํ๋ค. ๊ณ ๋ฏผํ๋ ์ค velog ๊ธ
JavaScript ๋ฌธ์์ด์์ ํน์ ๋ฌธ์ ๊ฒ์ES6 ์ด์์์ ์ ์ฉ ๊ฐ๋ฅํ๋ฉฐ, ํด๋น ๋ฌธ์๋ฅผ ํฌํจํ๊ณ ์์ผ๋ฉด true ์์ผ๋ฉด false๋ฅผ ๋ฐํํ๋ค.ํฌํจํ๊ณ ์๋ ๋ฌธ์์ ์ธ๋ฑ์ค๋ฅผ ๋ฐํํ๋ค. ํด๋น ๋ฌธ์๊ฐ ์์ ๊ฒฝ์ฐ์๋ -1์ ๋ฐํํ๋ค.์ฐธ๊ณ ๋งํฌ