๐ŸŽ‰ berenickt ๋ธ”๋กœ๊ทธ์— ์˜จ ๊ฑธ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค. ๐ŸŽ‰
Front
PostCSS
Index

1. PostCSS

  • https://postcss.org/
  • ์ผ๋ฐ˜ CSS ํŒŒ์ผ์€ ๋˜‘๊ฐ™์€ class๋ช…์ด ์กด์žฌํ•  ๋•Œ, ๋‚˜์ค‘์— ์ •์˜๋œ ๋˜‘๊ฐ™์€ class๋ช…์ด ์•ž์— ์ •์˜๋œ class๋ช…์„ ๋ฎ์–ด๋ฒ„๋ฆผ
  • ์ด๋ ‡๊ฒŒ ์ด๋ฆ„ ์ถฉ๋Œ์ด ๋ฐœ์ƒํ•˜๋ฉด, CSS BEM ๊ทœ์น™์„ ์ ์šฉํ•˜๊ฑฐ๋‚˜ ํ•˜๋ฉด๋˜๋Š”๋ฐ, ์ด๋ ‡๊ฒŒ ์ด๋ฆ„์„ ์ผ์ผํžˆ ์ง€์ •ํ•ด์ฃผ๋ฉด ๊ท€์ฐฎ์Œ
  • ๊ทธ๋ž˜์„œ ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด PostCSS๊ฐ€ ๋“ฑ์žฅํ–ˆ๋Š”๋ฐ, ์ผ๋ฐ˜ cssํŒŒ์ผ์— ํŒŒ์ผ๋ช….module.css์ด๋ผ๊ณ  ๋ถ™์—ฌ๋‘๋ฉด,
    • class๋ช…์ด ๋˜‘๊ฐ™๋”๋ผ๋„ ๋ฎ์–ด์”Œ์›Œ์ฃผ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

2. ์˜ˆ์ œ

๋ฒ„ํŠผ ์ปดํฌ๋„ŒํŠธ 2๊ฐœ ์ƒ์„ฑ

2.1 ๋ฒ„ํŠผ1

1
import React from 'react'
2
import styles from './Button1.module.css'
3
4
export default function Button1() {
5
return <button className={styles.button}>Button1</button>
6
}
1
/* Button1.module.css */
2
.button {
3
background-color: aqua;
4
}

2.2 ๋ฒ„ํŠผ2

1
import React from 'react'
2
import styles from './Button2.module.css'
3
4
export default function Button2() {
5
return <button className={styles.button}>Button2</button>
6
}
1
/* Button2.module.css */
2
.button {
3
background-color: plum;
4
}

2.3 App์— ์ ์šฉ

1
import './App.css'
2
import Button1 from './components/Button1'
3
import Button2 from './components/Button2'
4
5
export default function App() {
6
return (
7
<>
8
<Button1 />
9
<Button2 />
10
</>
11
)
12
}