250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- mock date
- 연결 요소 제거하기
- 과제 진행하기
- 테스트 Date
- ResizeObserver
- 구름톤챌린지
- nextjs-performance
- 테이블 해시 함수
- 자바스크립트
- 통신망분석
- 구름톤
- 프로그래머스
- Google 애널리틱스
- 최솟갑 구하기
- 리액트네이티브 엔진
- 헤르메스 엔진
- 리액트네이티브
- nextjs
- Jest uuid syntax
- Hermes Engine
- mutationobserver
- 호텔 대실
- create-next-app
- 귤 고르기
- jest
- Leetcode #javascript #알고리즘 #Algorithms #js
- 날짜 테스트
- 중첩 점
- JavaScript
- 구름톤 챌린지
Archives
- Today
- Total
나만보는개발공부블로그
React에서의 css최적화 본문
이전 게시글 작성에서 css최적화에 대해서 공부하였는데 실제로 자주 쓰는 기술스택의 react에서는 어떤식으로 css최적화를 적용할수있는지 글을 적어볼려합니다.
React에서 렌더링을 수행하는 시점은
1. props의 변화가 발생할경우
2. state의 변화가 발생할경우
3. forceUpdate()를 실행할경우
4. 부모 컴포넌트가 변화할경우
위의 4가지 방법이 있다고 합니다.
React에서 css 최적화를 적용하는 법은?
1. 인라인 스타일을 피해가야합니다.
import React from "react";
const Button = () => {
return <button style={{ backgroundColor: "#fff" }}>버튼</button>;
}
export default Button;
리액트에서 렌더링 과정을 해가면서 객체의 메모리 주소값은 서로 항상 다르기 때문에 가상 DOM에 불필요한 변화가 발생했다고 인식을 해서 인라인 스타일로 처리하면 불필요한 리렌더링이 발생한다고 합니다.
해결 방안으로는
react memo로 처리하여 불필요한 리렌더링을 막거나 styled component를 적용하여서 인라인 스타일을 적용안하고 처리할수있다.
'Web Development > Front' 카테고리의 다른 글
React에서의 RequestAnimationFrame 사용법 (0) | 2023.11.26 |
---|---|
Cookie (1) | 2023.11.26 |
Reflow와 Repaint 그리고 css관련 브라우저 최적화 (1) | 2023.11.23 |
display:none VS visibility: hidden (1) | 2023.10.13 |
[Nextjs] Tailwind css (0) | 2023.09.18 |