์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- ํฌ์ค
- ์ด๋ชฝ์ด์ค๊ณต๋ต
- ์ง์ฝ
- FE
- ์ผํ
- Git
- ์ฝ๋ฉ์บ ํ
- TiL
- ํ ์ต๋ชฉํ
- IT
- ๋ชจ๋ฐ์ผ๊ฒ์
- ๊ฐ๋ฐ์
- ์ฑ์ฅ๊ธฐ๋ก
- ํฌ์ค๊ธฐ๋ก
- ์ฝ๋ฉํ ์คํธ
- ์ด๋ชฝ์ด์ค
- Front-End
- ๊ฒ์์ถ์ฒ
- PT
- ์ฝ๋ฉ
- GitHub
- ๋ค์ด์ดํธ
- ๊นํ๋ธ
- ๊น
- ๋น์ ๊ณต์
- ํ์
- react
- ํ๊ธฐ
- ๋ฐ๋ํ๋กํ
- ํ๋ก๊ทธ๋๋จธ์ค
- Today
- Total
๋ชฉ๋กD E V E L O P E R ๐ป/Front-end (4)
JOYLOG
์ด๋ฏธ์ง ์ฒจ๋ถ ๊ธฐ๋ฅ์ ๊ฐ๋ฐํ๋ฉด์, input ํ๊ทธ์ ํ์ผ์ด ์ฒจ๋ถ๋ ๋(onChange)์ event ๋ฅผ ์ฝ์์ ์ฐ์ด๋ณด์๋๋ฐ์. ๋ค์ค์ ๋ก๋? ์ฒ๋ผ multiple ์์ฑ๊ฐ์ ๋ฃ์ด์ฃผ๋ฉด, ๋ค์ค ํ์ผ ์ ๋ก๋๊ฐ ๊ฐ๋ฅํด์ง๋ค๊ณ ํด์! ์ฝ์์ ์ฐ์ด๋ณด๋ฉด Files ๋ด๋ถ์ ํ์ผ์ Object ํํ๋ก ๋ฐ์์ค๊ณ ์๋ค๋ ๊ฒ์ ํ์ธํ ์ ์์ด์. ๋ฏธ๋ฆฌ๋ณด๊ธฐ ๊ธฐ๋ฅ์ ๊ตฌํํ๊ธฐ ์ํด์ ์ด๋ฏธ์ง DOM์ด ํ์ํ๋ฐ, ์ด๊ฒ์ URL.createObjectUrl() ๋ฉ์๋๋ฅผ ํ์ฉํ์ฌ ๋ฐํ๋ฐ์ ์ ์์ด์. ์์์ ๋ฐ์์จ ํ์ผ Object ๊ฐ๊ฐ์ URL.createObjectUrl() ์ ๋งค๊ฐ๋ณ์๋ก ๋ฃ์ด์ฃผ๋ฉด ์ฃผ์ด์ง ๊ฐ์ฒด๋ฅผ ๊ฐ๋ฆฌํค๋ URL์ DOMString ์ผ๋ก ๋ฐํ๋ฐ์ ์ ์์ด์. ์ด ๋ ๋งค๊ฐ๋ณ์๋ก ๋ฃ์ด์ฃผ๋ Object๋ File, Blob, Med..
history.pushState(null, '', '/kpi/reply'); ์ธํด ์ํ 2์ฃผ์ฐจ! ์ ํ๋ฆฌ์ผ์ด์ ์ฝ๋๋ฅผ ๋ถ์ํ๋ค ํ๋ผ๋ฏธํฐ๋ฅผ ๋ณ๊ฒฝํ๋ ์ด์ ์ ๋ํด ์ดํดํ๊ณ ์์ง ์๋ค๋ ๊ฒ์ ๊นจ๋ฌ์๋ค. ๊ทธ๋์ ํ๋ผ๋ฏธํฐ์ ์ฟผ๋ฆฌ์ ๋ํด ์ ๋ฆฌํด๋ณด๊ณ ์ ํ๋ค! ํ์ด์ง ์ฃผ์๋ฅผ ์ ์ํ ๋, ์ ๋์ ์ธ ๊ฐ์ ์ ๋ฌํด์ผํ ๋๊ฐ ์กด์ฌํ๋ค. ์ด ๋ ํ๋ผ๋ฏธํฐ์ ์ฟผ๋ฆฌ๋ฅผ ํ์ฉํ๋ค. Tip 1. URL์ ํตํด ๋ณด์ฌ์ฃผ๋ ๊ฐ์ ์ง์ ํ๊ธฐ ๋๋ฌธ์, ์๋ก๊ณ ์นจ์ ํด๋น ๋ฐ์ดํฐ ๊ฐ๋ค์ ์์ง ์๋๋ค 2. ์ ํจํ์ง ์์ Parameter์ ๋ํด์๋ Validation ๊ฒ์ฌ๋ฅผ ํด์ฃผ์ด์ผ ํ๋ค. ํ๋ผ๋ฏธํฐ : /profiles/joy → ์ผ๋ฐ์ ์ผ๋ก ํ๋ผ๋ฏธํฐ๋ ํน์ id๋ ์ด๋ฆ์ ๊ฐ์ง๊ณ ์กฐํํ ๋ ์ฌ์ฉ ์ฟผ๋ฆฌ : /about?detail=true → ์ฟผ๋ฆฌ์ ๊ฒฝ์ฐ์ ์ด๋ค..
CORS ์ด์ Cross-Origin Resource Sharing (๋ณด์์ ์ํ ์ ์ฑ ) ์์ธ : request ๋ณด๋ด๋ client ์ response ๋ณด๋ด๋ server๊ฐ ๋ค๋ฅธ ํฌํธ๋ฅผ ๊ฐ์ง๊ณ ์๋ค๋ฉด, CORS ์ ์ฑ ์ ๋งํ์ง ํด๊ฒฐ : ๋ค์ํ ๋ฐฉ๋ฒ์ด ์๋๋ฐ, ๊ทธ ์ค ํ๋๋ Proxy ์ฌ์ฉ (https://create-react-app.dev/docs/proxying-api-requests-in-development#configuring-the-proxy-manually) Proxy? : ์ ์ ์ ์ธํฐ๋ท ์ฌ์ด์ Proxy Server๊ฐ ์๋ค. : IP๋ฅผ Proxy Server์์ ์์๋ก ๋ฐ๊ฟ, ์ธํฐ๋ท์์๋ ์ ๊ทผํ๋ ์ฌ๋์ IP๋ฅผ ๋ชจ๋ฅด๊ฒ ๋๋ค. ๋ฐ์ดํฐ ๋ํ ์์๋ก ๋ฐ๊ฟ ์ ์๋ค. ๋ฐฉํ๋ฒฝ ๊ธฐ๋ฅ 2. ์น ํํฐ ๊ธฐ๋ฅ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/c8uoEI/btq88zza2H0/uZeL4vk2OQlkoKOtQ8oNx0/img.png)
Recat JS facebook ์์ 2013 ๋ ์ ๋ฐํํ library ์ปดํฌ๋ํธ๋ก ์ด๋ฃจ์ด์ ธ ์์ด ์ฌ์ฌ์ฉ์ฑ์ด ๋ฐ์ด๋จ Virtual DOM Real DOM? Virtual Dom? ์ด ๋ฌด์์ธ๊ฐ. 10๊ฐ์ ๋ฆฌ์คํธ๊ฐ ์์ ๋, ๊ทธ ์ค ํ๋์ ๋ฆฌ์คํธ๊ฐ Update ๋์๋ค. Real DOM : ์ ์ฒด ๋ฆฌ์คํธ๋ฅผ ๋ค์ Reload ํด์ผํ๋ฏ๋ก, ๋ง์ ๋น์ฉ ๋ฐ์ Virtual DOM : ๋ฐ๋ ํ ๊ฐ์ง ์์ดํ ๋ง DOM์์ ๋ฐ๊ฟ ์ค. Virtual Dom์ ์ด๋ป๊ฒ ํ ๊ฐ์ง ์์ดํ ๋ง DOM์์ ๋ฐ๊ฟ ์ ์์๊น? JSX ๋ฅผ ๋๋๋งํ๋ค. (Virtual DOM ์ด Update) ์ด์ Virtual DOM๊ณผ ๋น๊ตํด ๋ฐ๋ ๋ถ๋ถ์ ์ฐพ๋๋ค. ( = diffing) ๋ฐ๋ ๋ถ๋ถ๋ง Real DOM์์ ๋ฐ๊ฟ์ค๋ค. npx ํ์ฉํ์ฌ React Ap..