Next.js์์ SCSS ์ฌ์ฉํ๊ธฐ
Today, What I learned?
์ด์ ์ ํ๋ ๊ฐ์ธ ํ๋ก์ ํธ๋ฅผ next.js๋ก ๋ฆฌํฉํ ๋งํ๋ ๊ณผ์ ์ค..
๋ฐ๋๋ผ JS, HTML, SCSS๋ก ๋์ด์๋ ์ฝ๋๋ฅผ ๋ฐ๊พธ๋ ค๋ค๋ณด๋ next.js์ SCSS๋ฅผ ์ด๋ป๊ฒ ์ ์ฉํ๋ฉด ์ข์์ง์ ๋ํ ๊ณ ๋ฏผ์ด ์ข ์์๋ค.
๋จผ์ ํ์ฌ ์คํ์ผ ํ์ผ ๊ตฌ์กฐ๋ ์ด๋ ๋ค.
์ค์น
๋จผ์ ํ๋ก์ ํธ ํด๋์ sass ์ค์น!
yarn add sass
์ปดํฌ๋ํธ ํด๋์ scss ํ์ผ๋ค์ module.scss
๋ก ๋ณ๊ฒฝํด์ฃผ์๋ค.
Selector "body" is not pure
์ฒ์์ ๋ชจ๋ ํ์ผ์ module์ ๋ถ์๋ค๊ฐ ๋ง๋ ์๋ฌ..
reset.scss
๊ฐ์ ๊ฒฝ์ฐ๋ ์ ์ฒด์ ์ผ๋ก ์ ์ฉ๋๋ ๋ถ๋ถ์ด๊ณ , module.css
๊ฐ์ ๊ฒฝ์ฐ๋ ํน์ ๋ฒ์๋ฅผ ์ง์ ํ๋ CSS ๋ชจ๋์ด๊ธฐ ๋๋ฌธ์
๊ณตํต์ ์ผ๋ก ์ ์ฉ๋๋ CSS ๊ฐ์ ๊ฒฝ์ฐ๋ module.css
๋ก ์ ์ฉํ ์ ์์๋ค.
๊ทธ๋์ ๊ณตํต์ ์ธ ๋ถ๋ถ์ index.scss
์ ๋ชจ์์ ๊ฐ ์ปดํฌ๋ํธ๋ณ scss ํ์ผ์ import ํ๋ ๋ฐฉ์์ผ๋ก ์์ ํ๋ค.
์ ์ฉ
css module ๋ฐฉ์์ผ๋ก ์คํ์ผ์ ์ ์ฉํ๊ธฐ ๋๋ฌธ์ ์ปดํฌ๋ํธ๋ฅผ ๋ง๋ค๊ณ className
ํค์๋๋ก ๊ฐ๊ฐ์ ์คํ์ผ์ ์ ์ฉํ๋ค.
์ฌ๋ฌ ๊ฐ์ ์คํ์ผ์ ์ ์ฉํ๋ ๊ฒฝ์ฐ์ ๋ฐฑํฑ ์ด์ฉ!
const BeachInfoTop = () => {
return (
<div className={styles.beachInfoTop}>
<FaUmbrellaBeach className={styles.icBeach} aria-disabled />
<h1 className={`${styles.title} ${styles.beachName}`}>์์</h1>
<p className={styles.baseTime}>00:00</p>
<div className={styles.weatherWrapper}>
<div className={styles.weatherImg}>
<Image src={`/assets/images/clear.png`} alt="๋ง์" width={72} height={72} />
</div>
<h3 className={styles.currentTemp}>33°</h3>
</div>
</div>
);
};
์์ ์ฝ๋ ๊ฐ์ ๋ฐฉ์์ผ๋ก ์ ์ฉํ๋๋ ์ ๋์๋ค~ ๊ตฟ ๐