리액트에서는 class 대신 className 을 사용한다.
또한 하나씩 지정할때에는, module.css 를 사용한다.
.css 는 "전체 적용"을 불러오기에,
.module.css 를 적극 활용하는 중이다.
사용하는 방법 몇가지를 알아보자.
1. className 의 지정
import styles from "./...module.css"
<div className={styles.maindiv}> </div>
2. 동적 className 의 지정
1. 동적 className 을 지정할때, "" 없이, 지정해야 한다는 점을 명심
import styles from "./...module.css"
const condition = true;
let dynamaicStyle;
if (conditions) {
dynamaicStyle = styles.red; // "" 없음을 명심
} else {
dynamaicStyle = styles.blue; // "" 없음을 명심
}
return (
<div className={dynamaicStyle}> Title </div>
2. "" 를 사용하려면, styles["스타일"] 을 이용
: 대괄호를 사용하면 "" 안에 쓴 스타일도 적용된다
const condition = true;
let dynamaicStyle;
if (conditions) {
dynamaicStyle = "red"; // "" 있다.
} else {
dynamaicStyle = "blue"; // "" 있다.
}
return (
- <div className={styles[dynamaicStyle]}> Title </div> // [ ]를 사용한다.
3. 여러개의 className 추가하기
1. `className = {${} ${} ${} ...}` 하여 추가한다.
<div> className={`${styles.cart} ${styles.bump}`} onClick={toggleModal}> </div>
2. 동적 지정과 결합
const dynamicStyle = `${styles.cart} ${styles.bump}`
<div> className={dynamicStyle} onClick={toggleModal}> </div>
4. 직접 컴포넌트함수에서 style 관리하기 [ 가장 우선순위 ]
1. 컴포넌트 함수에서 style 관리하기
<label style={{ color: "red", fontSize: "40px" , ...}}> Title </label>
2. 컴포넌트 함수에서 동적 style 관리하기
<label style={{ color: 조건 ? "red" : "blue" }}> Title </label>
'React > React-Basic' 카테고리의 다른 글
8. State의 작동 방식 (1) | 2022.12.14 |
---|---|
7. 리액트의 최적화 With React.memo(), useCallback(), useMemo() (0) | 2022.12.14 |
5. Context 다뤄보기 - 기본편 (0) | 2022.12.08 |
4. useReducer 바로 알기 - 기본편 (0) | 2022.12.08 |
3. useEffect 바로알기 with. 클린업 프로세스, 디바운싱 (0) | 2022.12.08 |
댓글