๐๊ณต๋ถ/ํ๋ฆฌ์จ๋ณด๋ฉ์ฝ์ค11 [ํ๋ฆฌ์จ๋ณด๋ฉ์ฝ์ค] 3์ฃผ์ฐจ - ๊ณผ์ 4 โ์๊ฒ๋ ๊ฒ๊ณผ ๋๋์ ๋ฐ์ดํฐ ๊ตฌ์กฐ์๋ ์ค๊ณ๊ฐ ํ์ํ๋ค CSS์์ ํ ์ ์๋ ๊ฑด CSS์์ (์ผ์ ๊ธ์ ์ ์ด์์ด๋ฉด ์๋ฅด๊ณ ... ๋ถ์ด๊ธฐ = ellipsis) ์ปดํฌ๋ํธ ๋ด ๋ณ์ ์์น ์กฐ๊ฑด๋ถ ๋ ๋๋ง, ์ผํญ์ฐ์ฐ์ ๊ทธ๋ง ์ฌ๋ํ์ lodash์ uniqBy ๋ฆฌ๋์ค ํดํท Redux DevTools ์์ง๋ง์ ํ๋ก ํธ์๋ ํด๋ฆฐ์ฝ๋ ๐ฅ๊ทธ๋์ ํด๋ณด๋ ์ ๋ฆฌ 1. ๋ฐ์ดํฐ ๊ตฌ์กฐ์๋ ์ค๊ณ๊ฐ ํ์ํ๋ค ์๊ฐํด๋ณด๋ฉด ์๋ฐ๋ก ํ๋ก์ ํธ ํ ๋๋ ์ค๊ณ๊ฐ ๊ฑฐ์ ๊ฐ๋ฐ์ด๋ ๋ง๋จน๊ฒ ๊ฑธ๋ ธ์๋๋ฐ ํฌ๊ฒ ๋ค๋ฅผ๋ฆฌ๊ฐ ์๊ฒ ์ง..! ์๋ฅผ๋ค๋ฉด ์ ๋ฒ ๊ณผ์ ๋ฆฌ๋ทฐ์ธ๋ฐ, ์ฌ์ฉ์ ๋ฑ๊ธ์ด ์์ด์ ๊ฐ ๋ฑ๊ธ๋ณ๋ก ์ ๊ทผํ ์ ์๋ ๊ฒ์ํ์ด ๋ค๋ฅธ ๊ฒฝ์ฐ์ ์์ ๊ฐ์ด access(์ ๊ทผํ ์ ์๋ ํ์ด์ง)๋ฅผ ํ๋ํ๋ ์ ์ด์ฃผ์ง ์๊ณ ํด๋น ์ ์ ์ ๊ถํ level๋ง ์ ๋ฌํ ํ ๊ทธ์ ๋ฐ๋ฅธ ์ ๊ทผ .. 2021. 8. 11. [ํ๋ฆฌ์จ๋ณด๋ฉ์ฝ์ค] 2์ฃผ์ฐจ -๊ณผ์ 3(2) โ์๊ฒ๋ ๊ฒ๊ณผ ๋๋์ forwardRef styled component๋ฅผ importํ ๋ ๋ด๊ฐ ํ ์ค์ - Circular dependency ์์๋ฅผ ๊ด๋ฆฌํ๋ค๋ ๊ฒ์ - const์ Object.freeze ๋๋ฌด๋ง๊ณ ์ฒ์๋ณด๋ ์ฝ๋๋ฅผ ์ง๊ณ ์ถ๋ค netlify์์ ๋ฐฐํฌํ๊ธฐ (treat warning as errors) - CI=false npm run build ๐ฅ๊ทธ๋์ ํด๋ณด๋ ์ ๋ฆฌ 1. forwardRef ํ์ ์ปดํฌ๋ํธ์ ์๋ ์๋ฆฌ๋จผํธ์ ์ ๊ทผํ๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋ค. ์ด๋ฒ์ ํ์๊ฐ์ ์ ๊ตฌํํ๋ฉด์, ์ ๋๋ก ์ ๋ ฅ ๋์ง ์์ ๊ฒฝ์ฐ์ toast๋ฅผ ๋์ฐ๋ฉด์ ํด๋น input์ focus๋ฅผ ์ฃผ๋ ์์ ์ ํ๋๋ฐ, ์ฃผ์ ์ ๋ ฅํ๋ ์นธ์ด ์ปดํฌ๋ํธ๋ก ๋ค์ด์์์ด์... focus๋ฅผ ์ด๋ป๊ฒ ์ฃผ์ฃ ? ~๊ณ ๋ฏผ์ ์์~ (1) ์์ ์ปดํฌ๋.. 2021. 8. 8. [ํ๋ฆฌ์จ๋ณด๋ฉ์ฝ์ค] 2์ฃผ์ฐจ -๊ณผ์ 3(1) ์ด๋ฒ ๊ณผ์ ๋ ์ผ์ฃผ์ผ ๊ฝ์ฑ์ด ๊ณผ์ ! ๊ทธ๋์ ์์์ผ์ ์ ์ถํ๋๊ฑด ์ค๊ฐ ์ ๊ฒ(?) ๋๋์ด๋ค โ์๊ฒ๋ ๊ฒ๊ณผ ๋๋์ ํ๊ฒฝ์ค์ ์ ์ธ์ ํด๋ ์ด๋ ต๋ค ํ์ผ์ ์ชผ๊ฐ๊ธฐ ์ํ๊ด๋ฆฌ๊ฐ ๊ทธ๋ฐ ๋ง์ด์๊ตฐ์? merge์ rebase์ ์ฐจ์ด styled-component์ ์ธ์ ์นํด์ง๋์? ์ ์์ผ๊ณผ ์คํฌ๋ผ ์ปจ๋ฒค์ ...? ๐ฅ๊ทธ๋์ ํด๋ณด๋ ์ ๋ฆฌ 1. ํ๊ฒฝ์ค์ ์ ์ธ์ ํด๋ ์ด๋ ต๋ค ์ด๋ฒ์ ํ๋ก์ ํธ ์์ฑํด์ ๊ณต์ ํ๋๋ฐ ์ ํธ์ํ์ด๋น~ ํ๊ณ ๋๋๊น ๋ช๊ฐ ๋บด๋จน์ด์ ์ ์ด๋๋ค๐..... ๊น๋จน๊ธฐ ์ฌ์ด ๋ชฉ๋ก npm install prettier eslint-plugin-prettier eslint-config-prettier -D (prettier, eslint) npm install styled-components.macro (styled-compon.. 2021. 8. 4. [ํ๋ฆฌ์จ๋ณด๋ฉ์ฝ์ค] 1์ฃผ์ฐจ -๊ณผ์ 2 โ์๊ฒ๋ ๊ฒ๋ค API๊ฐ ํญ์ ์ฃผ์ด์ง ๊ฑฐ๋ผ๊ณ ์๊ฐํ์ง ๋ง๊ธฐ ๊น ๋ธ๋์น์ ํจ๊ณผ์ ์ธ ์ฌ์ฉ๋ฒ! (master์์ ํ์ถํ๊ธฐ) ๋ฆฌ์กํธ๋ FontAwesomeIcon์ import ํด์ผ ํด (feat. npm install์ ํจ์ ) ํจ์จ์ ์ธ ์์ ๊ด๋ฆฌ๋ฒ ์ด๋ฆด์ ๋ถํฐ ๋ ๋ ๊ณ ๋ฅผ ๋ชปํ์ด ์์ง์ ์ด๋ ค์ด styled-components ํด๋์คํ ์ปดํฌ๋ํธ ๋์ด๋ ์ ๋ง ๐ฅ๊ทธ๋์ ํด๋ณด๋ ์ ๋ฆฌ 1. API๊ฐ ํญ์ ์ฃผ์ด์ง ๊ฑฐ๋ผ๊ณ ์๊ฐํ์ง ๋ง๊ธฐ UI ๊ตฌ์ฑ์ ํ์ํ ๋ฐฑ์๋ API๊ฐ ์ค๋น๋์ง ์์์ ๋, ์ํ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ง๋ค์ด์ ์์ ํ ์ ์์ด์ผ ํจ (mock data) public/data ํด๋ ์์ ๋ฐ์ดํฐ๋ฅผ ๋ฃ์ด์ ๊ด๋ฆฌํ ์ ์๋ค. ์๋๋ฉด ์ฌ์ฉํ๋ component ํ์ผ๊ณผ ๊ฐ์ level์ ์์น ์ํจ ํ import ํด๋ ๋จ ๐ก์ ๊น!.. 2021. 8. 1. [ํ๋ฆฌ์จ๋ณด๋ฉ์ฝ์ค] 1์ฃผ์ฐจ -๊ณผ์ 1 โ์๊ฒ๋ ๊ฒ๋ค (so many) styled-components jsconfig.json ์ถ๊ฐํ์ฌ ๋ชจ๋์ ์ ๋๊ฒฝ๋ก๋ก ์ํฌํธ Intersection Observer [ { isIntersecting } ] dl, dt, dd README์ ์ถ๊ฐํ ์ ์๋ Markdown Badges netlify๋ก ๋ฐฐํฌํ๊ธฐ ์?์ ์์คํจ feat. ์ต๊ด ๋ฒ๋ฆฌ๊ธฐ ๐ฅ๊ทธ๋์ ํด๋ณด๋ ์ ๋ฆฌ 1. styled-components css in js ๋ฐฉ์์ผ๋ก ์ปดํฌ๋ํธ๊ฐ ๋ ๋๋ง ๋ ๋ ์คํ์ผ ์ ๋ณด๋ฅผ ์ฝ๋๋ค๊ณ ํ๋ค. but ๊ทธ ์ปดํฌ๋ํธ๊ฐ ๋ ๋๋ง ๋ ๋ ๋ง๋ค(!) ์คํ์ผ์ ๋ณด๋ ๊ฐ์ ธ์ด → ๋์ ์ธ ์ด๋ฒคํธ๊ฐ ์์ฃผ ๋ง์ ์ฌ์ดํธ๋ผ๋ฉด ์ปดํฌ๋ํธ ์ ํ์ด ๋ง์ ํ ๋ฐ ๊ทธ๋ฌ๋ฉด ๋ ๋๋ง์ด ๋๋ฌด ๋ง์์ง๋ค๋ ๋จ์ ์ด ์๊ธฐ๋ ํ๋ค. ๊ทธ๋๋ ํด๋์ค๋ช ์ ํ๋ํ๋ ์๊ฐํ์ง ์.. 2021. 7. 28. ์ด์ 1 2 3 ๋ค์