์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 | 29 | 30 |
- TiL
- Front-End
- ๋ฐ๋ํ๋กํ
- Git
- ๊นํ๋ธ
- ์ฝ๋ฉ
- ๋น์ ๊ณต์
- react
- ๊น
- ํ๋ก๊ทธ๋๋จธ์ค
- ์ฝ๋ฉํ ์คํธ
- ํฌ์ค
- ๊ฐ๋ฐ์
- ๋ค์ด์ดํธ
- ์ฑ์ฅ๊ธฐ๋ก
- ์ผํ
- ํ ์ต๋ชฉํ
- FE
- ์ด๋ชฝ์ด์ค๊ณต๋ต
- ๊ฒ์์ถ์ฒ
- GitHub
- ๋ชจ๋ฐ์ผ๊ฒ์
- ์ฝ๋ฉ์บ ํ
- ํฌ์ค๊ธฐ๋ก
- IT
- ํ๊ธฐ
- ์ด๋ชฝ์ด์ค
- PT
- ํ์
- ์ง์ฝ
- Today
- Total
๋ชฉ๋กD E V E L O P E R ๐ป (13)
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 → ์ฟผ๋ฆฌ์ ๊ฒฝ์ฐ์ ์ด๋ค..
์ค๋๋ง์ ๋์์จ ์กฐ์ด๋ก๊ทธ ํฐ์คํ ๋ฆฌ ๐ ์ํด ๊ธฐ๋ , ๊ทธ๋ฆฌ๊ณ ์ธํด ์ํ ์์ ๊ธฐ๋ ๋ค์ ํ ๋ฒ ํฐ์คํ ๋ฆฌ๋ฅผ ๊พธ์คํ ์์ฑํด๋ณด๋ ค ํ๋ค. ์ฌ์ค ์๋ ๊น์ง ์ง์ ์ ์ํ ๊นํ๋ธ๋ธ๋ก๊ทธ์์ ํฌ์คํ ์ ์ด์ด๋๊ฐ๊ณ ์์๋๋ฐ, ํธ์ง๊ธฐ, ์นดํ ๊ณ ๋ฆฌ ์ค์ ๋ฑ ํ๊ณ๊ฐ ์๋ค๊ณ ์๊ฐํด ๋ค์ ๋์์ค๊ฒ ๋์๋ค ๐ ์ฌ ํด์๋ ํฌ์คํ ์์ฑ์ ๋ถ๋ด์ ๋๋ผ์ง ์๊ณ , ๊ธฐ๋กํ๊ณ ๊ณต์ ํ๊ณ ์ถ์ ๋ ์ธ์ ๋ ์ง ๋ฐฉ๋ฌธํ๊ณ ์ ํ๋ค. ์์ ๋งํ๋ฏ ๊ฐ๋จ์ ํ ์๋น์ค ํ์ฌ์์ ์ธํด์ ์์ํ์๋ค! ์ฌ์ค ๋ฉด์ ์ ๋ณผ ๋ ๊ต์ฅํ ๋นํฉ์ค๋ฌ์ ๋ค... ์๋ํ๋ฉด ๋์ CS ์ง์์ ํ์ฃผ์๋ฅผ ์์๋ฒ๋ ธ๊ธฐ ๋๋ฌธ ๐คข ์ง๋ฌด ๊ด๋ จํ์ฌ ๋๊ฐ ์๊ฐ๋๋ ์ง๋ฌธ์... - ํ๋ก์ ํธ์์ ์ฌ์ฉํ๋ ๊ธฐ์ ์คํ์ ๋ํ ์ง๋ฌธ - (๋ฐฐํฌ๋ ํ๋ก์ ํธ๋ฅผ ๋ณด๋ฉฐ) ๊ตฌํ ๊ณผ์ ์ ๋ํ ์ง๋ฌธ - ์๋ฒ๊ฐ ๋๋๋ง๋๋ ๊ณผ์ - ์๋ฒ์ฌ..
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. ์น ํํฐ ๊ธฐ๋ฅ..