4. Styled-components
keyword
styled-componets
1. styled-componets
๋ํ์ ์ธ CSS-in-JS ๋ผ์ด๋ธ๋ฌ๋ฆฌ
CSS ์์ฑ์ ์ปดํฌ๋ํธ๋ก ์ฌ๊ณ ํ ์ ์๋ ์ฅ์
sc๋ผ๋ ์ ๋์ฌ๊ฐ ๋ถ์ ์ ๋ํฌํ class name์ ์์ฑํจ
React ์ปดํฌ๋ํธ์์ ์ ๋ฌ๋ฐ์ props๋ฅผ ํตํด ๋์ ์ผ๋ก ์คํ์ผ ๋ณ๊ฒฝ ๊ฐ๋ฅ
Tagged templates literals์ ์ฌ์ฉํด ํจ์ ํํ๋ก ์ฌ์ฉํ ์ ์๋ค.
์ฌ์ฉ๋ฒ
Tagged templates์ ํจ์๋ก ํ์ฑํ ์ ์์ด ์๋์ ๊ฐ์ด ํจ์ ํํ์ ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ค.
์ถ๊ฐ ํค์๋
ํ ํ๋ฆฟ ๋ฆฌํฐ๋ด์ ๋ฐ์ ๋ ํํ๋ก ํ๊ทธ๋ฅผ ์ฌ์ฉํ๋ฉด ํ ํ๋ฆฟ ๋ฆฌํฐ๋ด์ ํจ์๋ก ์ฌ์ฉํ ์ ์๋ค. ํ๊ทธ ํจ์์ ์ฒซ ๋ฒ์งธ ํ๋ผ๋ฏธํฐ๋ ์ ์ ๋ฌธ์์ด์ ๋ฐฐ์ด์ ๋๋จธ์ง ํ๋ผ๋ฏธํฐ์ ๋์ ๋ฐ์ดํฐ์ธ ํํ์์ ์ ๋ฌ๋ฐ๋๋ค.
with Babel
next.js๋ SSR(Server Side Rendering) ํ๋ ์์ํฌ๋ก ์๋ฒ์์ pre-redering๋ HTML ๋ฌธ์๋ฅผ ์ ๊ณตํ๋ค. ์ด๋ฅผ ํตํด ๊ฒ์ ์์ง์ด ์น ์ฌ์ดํธ๋ฅผ ๋ถ์ํ ์ ์๋๋ก ๊ฒ์ ์์ง ์ต์ ํ(SEO)๋ฅผ ์ ๊ณตํ๋ค.
์ด๊ธฐ ์๋ฒ ์ฌ์ด๋ ๋ ๋๋ง ํ ํด๋ผ์ด์ธํธ ์ฌ์ด๋ ๋ ๋๋ง์ด ๋ฐ์ํ ๋ styled-components์ class name์ ํด์๊ฐ์ด ์๋ฒ์ ํด๋ผ์ด์ธํธ ๊ฐ์ ๋ถ์ผ์นํ ์ ์์ด ์๋ฌ๊ฐ ๋ฐ์ํ๋ค. ์ด๋ babel-plugin-styled-components
๋ฅผ ์ฌ์ฉํด ์๋ฒ์ ํด๋ผ์ด์ธํธ ๊ฐ์ ์ผ๊ด๋ class name์ ์์ฑํด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๋ค.
๋ํ, ๋ณด๋ค ํธ๋ฆฌํ ๋๋ฒ๊น ์ ์ํด ์ปดํฌ๋ํธ ์ด๋ฆ์ class name์ ํด์ฌ๊ฐ ์ ๋์ฌ๋ก ์ถ๊ฐํ๋ค.
Last updated