๐บ Front End/- React, Next.js42 [๋ฆฌ์กํธ ๋ถ์ํ๊ธฐ] ๋ฆฌ์กํธ๊ฐ ํ์ด์ง๋ฅผ ๋ผ์ฐํ ํ๋ ๋ฐฉ๋ฒ (2) ๋ถ์ :: Broswer History API๋ฅผ ์ฌ์ฉํด์ ํ์ด์ง ๋ผ์ฐํ ํ๊ธฐ ์ด ๊ธ์ ๋ฆฌ์กํธ์ ์ด์ฌ์๋ค์ ์ํ ๊ธ๋ก ๊น์ ๋ด์ฉ์ ์ต๋ํ ๋ฐฐ์ ํ๊ณ ์ฌ์ด ๊ฐ๋ ์ ๋ํด ์์ฑํ์๊ณ , ๋ฆฌ์กํธ์ ์ง์ ์ฅ๋ฒ ์ ๋ฎ์ถ๊ธฐ ์ํ ์์๋ก ์ด๋ ค์ด ๋ด์ฉ์ด ์๋ต๋์ด ์์ ์๋ ์์ต๋๋ค. ์ด ๋ถ๋ถ์ ๊ฝค๋ ํต์ฌ์ ์ด๋ผ๊ณ ์๊ฐํ๊ธฐ ๋๋ฌธ์ 3๋ถ์์ผ๋ก ๋๋ ์ ์ค๋ช ํด๋ณด๋๋ก ํ๊ฒ ๋ค. ํด๋น ๊ธ์ ๋ํด์ ๋ณธ์ธ์ด ์ด ๋ถ๋ถ์ ๋์ด๊ฐ๋ ๋๊ฒ ๋ค๊ณ ์๊ฐํ๋ ๋ถ๋ถ์ ๋์ด๊ฐ์ ํ์ธํ๋ ๊ฒ์ ๊ถ์ฅํ๋ค. ํ์ง๋ง ๊ธธ์ง ์์ ๊ธ์ด๋ฏ๋ก ๊ฐ๋ณ๊ฒ ์ฝ๋ ๊ฒ๋ ์ข์ ๋ฐฉ๋ฒ์ด๋ค. 1๋ถ ๋ฆฌ์กํธ๊ฐ ํ์ด์ง๋ฅผ ๋ผ์ฐํ ํ๋ ๋ฐฉ๋ฒ 2๋ถ Broswer History API๋ฅผ ์ฌ์ฉํด์ ํ์ด์ง ๋ผ์ฐํ ํ๊ธฐ 3๋ถ react-router-dom์ ์ด์ฉํด์ ํ์ด์ง ๋ผ์ฐํ ํ๊ธฐ ์ฐ๋ฆฌ๋ ์ ๋ฒ ์๊ฐ์ ๋ฆฌ์กํธ๊ฐ ํ์ด์ง์์ ์ด๋ค ์์ผ๋ก ๋ผ์ฐํ ๋๊ธธ ์ํ๋์ง? ์ ๋ํด์ ์ ๊น ์์๋ณด์๋ค.. 2020. 7. 20. [๋ฆฌ์กํธ ๋ถ์ํ๊ธฐ] ๋ฆฌ์กํธ๊ฐ ํ์ด์ง๋ฅผ ๋ผ์ฐํ ํ๋ ๋ฐฉ๋ฒ (1) ๋ถ์ :: Single Page Application์ด ๋ฌด์์ด๊ณ ์ด๋ป๊ฒ ๋ฆฌ์กํธ์์ ์ฌ์ฉํ ๊น? ์ด ๊ธ์ ๋ฆฌ์กํธ์ ์ด์ฌ์๋ค์ ์ํ ๊ธ๋ก ๊น์ ๋ด์ฉ์ ์ต๋ํ ๋ฐฐ์ ํ๊ณ ์ฌ์ด ๊ฐ๋ ์ ๋ํด ์์ฑํ์๊ณ , ๋ฆฌ์กํธ์ ์ง์ ์ฅ๋ฒ ์ ๋ฎ์ถ๊ธฐ ์ํ ์์๋ก ์ด๋ ค์ด ๋ด์ฉ์ด ์๋ต๋์ด ์์ ์๋ ์์ต๋๋ค. ์ด ๋ถ๋ถ์ ๊ฝค๋ ํต์ฌ์ ์ด๋ผ๊ณ ์๊ฐํ๊ธฐ ๋๋ฌธ์ 3๋ถ์์ผ๋ก ๋๋ ์ ์ค๋ช ํด๋ณด๋๋ก ํ๊ฒ ๋ค. ํด๋น ๊ธ์ ๋ํด์ ๋ณธ์ธ์ด ์ด ๋ถ๋ถ์ ๋์ด๊ฐ๋ ๋๊ฒ ๋ค๊ณ ์๊ฐํ๋ ๋ถ๋ถ์ ๋์ด๊ฐ์ ํ์ธํ๋ ๊ฒ์ ๊ถ์ฅํ๋ค. ํ์ง๋ง ๊ธธ์ง ์์ ๊ธ์ด๋ฏ๋ก ๊ฐ๋ณ๊ฒ ์ฝ๋ ๊ฒ๋ ์ข์ ๋ฐฉ๋ฒ์ด๋ค. 1๋ถ ๋ฆฌ์กํธ๊ฐ ํ์ด์ง๋ฅผ ๋ผ์ฐํ ํ๋ ๋ฐฉ๋ฒ 2๋ถ Broswer History API๋ฅผ ์ฌ์ฉํด์ ํ์ด์ง ๋ผ์ฐํ ํ๊ธฐ 3๋ถ react-router-dom์ ์ด์ฉํด์ ํ์ด์ง ๋ผ์ฐํ ํ๊ธฐ ์ด๋ฒ ์ฃผ์ ์ ๋ํด์ ์ด์ผ๊ธฐ๋ฅผ ํ๊ธฐ ์ํด์ ์ฐ์ ํ์ด์ง๊ฐ ์ด๋ค ๋ฐฉ์์ผ๋ก ์ฌ์ฉ์์๊ฒ ๋ณด์ฌ์ง๋์ง ์์์ผ ํ.. 2020. 7. 20. [๋ฆฌ์กํธ ๋ถ์ํ๊ธฐ] ๋ฆฌ์กํธ์ ํต์ฌ JSX์ ๋ํด ์์๋ณด์. (๋ถ์ :: ๋ฆฌ์กํธ์์๋ JSX๋ฅผ ์ด๋ป๊ฒ ์ด์ฉํ ๊น?) ์ฐ๋ฆฌ๋ ์ง๊ธ๊น์ง ๊ณ์ ๋ฆฌ์กํธ์ ๋ํ ํต์ฌ์ ๋ํด์ ์ด์ผ๊ธฐ๋ฅผ ํ์๋ค. ์ด์ ๊ทธ ๋ฆฌ์กํธ๋ผ๋ ๊ฒ์ด ์ด๋ค ์์ผ๋ก ๋์๊ฐ๋์ง ํ์ธํด๋ณด์. JSX JSX๋ JavascriptXML์ด๋ผ๊ณ ํ๋๋ฐ, ์ด๋ Javascript๋ ์๋๊ณ HTML๋ ์๋ ๊ฒ์ด๋ค. ์ ํํ๋ ์คํฌ๋ฆฝํธ์ ํ์ฅ ๋ฌธ๋ฒ์ด๋ผ๊ณ ํ๋ ๊ฒ์ธ๋ฐ, ์ฐ๋ฆฌ๋ ๋ฆฌ์กํธ๋ก ์ด JSX๋ฅผ ํ ์ฉํ์ฌ UI๋ฅผ ๊ตฌ์ฑํ ๊ฒ์ด๋ค. ์ด๋ ๊ฒ ๋ง ํ๋ฉด ๋๋ฌด ์ด๋ ค์ฐ๋ฏ๋ก ์ฐ๋ฆฌ๊ฐ create-react-app์ ํตํด์ ํ๋ก์ ํธ๋ฅผ ์์ฑํ๋ค๊ณ ๊ฐ์ ํ๊ณ , ํด๋น ์ฝ๋์์ JSX๋ ๋ฌด์์ธ์ง ๋ณด์ด๊ฒ ๋ค. ์ฝ๋๋ก ๋ด๋ณด์ ์ฐ๋ฆฌ์ ํ๋ก์ ํธ์์ Index.js์ ์๋ ์ฝ๋๋ฅผ ํ ๋ฒ ๋ด๋ณด์. ReactDOM.render();๋ผ๋ ๊ตฌ๋ฌธ์์ ์ฐ๋ฆฌ๋ JSX๋ฅผ ์ฌ์ฉํ ๊ฒ์ด๋ค. ์๋ ์ฝ๋๋ฅผ ์ง์๋ณด๊ณ ๋ค์๊ณผ ๊ฐ์ด ๊ตฌ์ฑํด๋ณด์... 2020. 7. 20. [๋ฆฌ์กํธ ๋ถ์ํ๊ธฐ] Create-React-App์ผ๋ก ๋ฆฌ์กํธ ๊ฐ๋ฐ ํ๊ฒฝ์ ๊ตฌ์ถํด๋ณด์. ์ง๋ ์๊ฐ์๋ ์ ์ฐ๋ฆฌ๋ ๋ฆฌ์กํธ์ ๊ฐ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํด์ผ ํ๋์ง์ Create-React-App์ด ๋ฌด์์ธ์ง์ ๋ํด์ ์์๋ณด์๋ค. ์ด๋ฒ ์๊ฐ์๋ create-reacat-app์ผ๋ก ์ค์ ๋ก ๋ฆฌ์กํธ ๊ฐ๋ฐ์ ์ํ ๊ฐ๋ฐ ํ๊ฒฝ์ ๊ตฌ์ถํด๋ณด์. ํด๋น ๊ฒ์๋ฌผ์ ์์ค์ฝ๋๋ ๋ฆฌ์กํธ ๊ณต์ ํํ์ด์ง์ ์ด๋ฏธ์ง๋ฅผ ๊ฐ์ ธ๋ค ์ด ๊ธ์ ๋๋ค. ๋ฆฌ์กํธ๋ 4 ๊ฐ์ง์ ๋ฐฉ์์ผ๋ก Create-React-App์ ์ฌ์ฉํ ์ ์๋ค. NPM NPX Yarn CDN (react) ๋ณ๋ก ์ด๋ ต์ง ์์ผ๋ฏ๋ก ์ฐจ๋ก๋๋ก ๋ด๋ณด์. ์ด๋ค์ค์ ๊ผญ ๋ฌด์์ ์จ์ผํ๋ค๋ ๊ฒ์ ์๋ค. ๊ทธ๋ฅ ์ํ๋ ๋๊ตฌ๋ก ์์์ ํ๋ฉด๋๋ค. npm์ผ๋ก create-react-app ์์ํ๊ธฐ npm install -g ๋ pc์ globalํ๊ฒ ์ค์ ํ๋ค๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. npx๋ก create-r.. 2020. 7. 20. [๋ฆฌ์กํธ ๋ถ์ํ๊ธฐ] React๋ฅผ ๋ถ์ํด๋ณด์. (๋ถ์ :: create-react-app์ ๋ํด ๋ถ์ํด๋ณด์) ๋ฆฌ์กํธ๋ ๋ฌด์์ผ๊น? ๋ฆฌ์กํธ๋ ํ์ด์ค๋ถ์์ ๊ฐ๋ฐํ๊ณ ๊ด๋ฆฌํ๋ UI ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ค. ์ฌ๋๋ค์ด ๋๋ถ๋ถ ์คํดํ๊ณ ์๋๋ฐ, ๋ฆฌ์กํธ๋ ํ๋ ์์ํฌ๊ฐ ์๋๋ผ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๋ค. ์ฐ๋ฆฌ๊ฐ ์๊ณ ์๋ ์ฌ๋ฌ javascript ํ๋ ์์ํฌ๋ค๊ณผ ํ์คํ ๋ค๋ฅด๋ค. ์ฌ๋๋ค์ด ์คํดํ๋ ๋ ๋ค๋ฅธ ๋ด์ฉ์ React๋ ์น ๊ฐ๋ฐ์ ๋ชจ๋ ๊ฒ์ ์ ๊ณตํ๋ค๊ณ ์๊ณ ์๋๋ฐ, ์ฌ์ค React๋ UI๋ฅผ ์กฐ๊ธ ๋ ํจ์จ์ ์ผ๋ก ๊ตฌ์กฐ์ ์ผ๋ก ์์ฑํ ์ ์๊ฒ ํด์ฃผ๋ UI๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๋ค. React ์ ๋ฌธํ๊ธฐ ์ฐ๋ฆฌ๊ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ๊ฐ๋ฐ์ ํ๊ธฐ ์ํด์ ์ฐ๋ฆฌ์๊ฒ ํ์ํ ๋ผ์ฐํ , ๋น๋ ํ๊ฒฝ ๊ตฌ์ฑ, ๋ถ์๋ฑ๊ณผ ๊ฐ์ ์ธํ ์ ์ง์ ๊ตฌ์ฑํด์ผ ํ๋ค๋ ์ ์ด ์๋ค. ์์ ์๋ ๊ฐ์ธ๋ค์ด ๋ด๋ Bolierplate ๋ฆฌ์กํธ์ ์์กดํด์ ๊ฐ๋ฐ์ ํ๋ค๊ณ ํ๋๋ฐ, ๊ทธ์ ๋ฐ๋ฅธ ๊ฐ๊ฐ ๋ค๋ฅธ ํ๊ฒฝ์ ๋ถํธํจ์ ๋๋ ๊ฐ๋ฐ์.. 2020. 7. 19. [๋ฆฌ์กํธ ๋ถ์ํ๊ธฐ] ์ฐ๋ฆฌ๋ ์ ์๋ฐ์คํฌ๋ฆฝํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ํ๋ ์์ํฌ๋ฅผ ์ด์ฉํด์ผ ํ ๊น? ์ฐ๋ฆฌ๋ ์น์ ๊ฐ๋ฐํ๋ ค๋ฉด HTML / CSS / Javascript๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค๋ ๊ฒ์ ๊ฐ๋ฐ์ ๋ฐฐ์๋ณธ ๋๊ตฌ๋๋ ์ฝ๊ฒ ์๊ฐํด ๋ผ ์ ์๋ค. ํ์ง๋ง ์ฐ๋ฆฌ๋ ์ React, Vue, Angular์ ๊ฐ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํด์ ๊ฐ๋ฐ์ ํด์ผ ํ ๊น? ๋จ์ง ์ฝ๊ฒ ๊ฐ๋ฐ์ ํ๊ธฐ ์ํด์? ํธํ ๊ตฌ์กฐ๋ฅผ ์ํด์? ๊ทธ์ ๋ํ ๋๋ต์ ์ ๋๋ก ํ ์ ์๋ ์ฌ๋์ด ๋์ด๋ณด์. ์ฌ์ฉํด์ผํ๋ ์ด์ ์ฌ์ฉํด์ผ ํ๋ ๊ฐ์ฅ ํฐ ์ด์ ๋ฅผ ๋จผ์ ์ด์ผ๊ธฐ ํด๋ณด์๋ฉด *_UI ์ ๋ฐ์ดํธ *_์ด๋ค. ์ฐ๋ฆฌ๊ฐ ๋ง๋ค ์น ์ฑ์ ๋จ์ํ ์ ๋ณด๋ฅผ ๋ณด์ฌ์ฃผ๋ ๊ฒ์์ ๋๋๋ ๊ฒ ์๋๋ผ, ํ๋ก๊ทธ๋จ์ ์ํ๊ฐ ๋ณ๊ฒฝ๋๋ค๋ฉด ๋์ ์ผ๋ก ์ฌ์ฉ์์๊ฒ๋ ๋ณ๊ฒฝ๋ UI๋ฅผ ์ ๊ณตํ์ฌ ๋ฐ์ ํด์ผ ํ๋ค. ๊ทธ๋ฆฌ๊ณ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ํ๋ ์์ํฌ๋ UI๋ฅผ ์๋์ผ๋ก ์ ๋ฐ์ดํธ ํด์ค๋ค๋ ์ ์์ ์ฐ๋ฆฌ๋ ์ด์ ๋.. 2020. 7. 19. ์ด์ 1 ยทยทยท 4 5 6 7 ๋ค์