inline style 관련
285
작성한 질문수 2
인라인 스타일 정의시 새로운 객체로 인식하여 리렌더링이 계속되는 문제가 있어서
인라인 스타일을 지양하고 styled-components나 usememo를 쓰라고 하셨는데요
여기서 갑자기 헷갈리는 질문이 생겼어요
객체의 레퍼런스 값이 바뀌어야 리렌더링이 되는 걸로 알고 있는데 (불변성)
스타일 객체의 속성이 바뀌면 어떻게 알아채고 리렌더링을 하나요.
cosnt style = useMemo(() => ({ marginTop: 10; }), []);
or
cosnt style = { marginTop: 10; };
답변 1
0
스타일 객체의 속성이 어떨 때 바뀌나요?
0
스타일의 내용이 바뀐 경우를 상상하며 질문을 했는데요..
질문하면서 아래처럼 정리가 되었는데.. 맞다면 제가 쓸데없는 질문을 한 셈이네요. 죄송합니다;;
1. state가 변경되면 리렌더링이 되고 그때마다
1.1. 만약 인라인 스타일로 정의되었다면 그부분이 새로운 객체로 인식되어 virtualDOM이 달라진부분으로 인식하고 리렌더링을 한다.
1.2. styled-components나 usememo를 썼다면 값을 캐싱하여 해당 부분은 리렌더링하지 않는다.
2. style의 내용자체가 변경됐을 때는 refresh를 하여 초기 렌더링을 하는 거니까 (리렌더링이 아닌) 리렌더링 과정과 관계없다
0
네 맞습니다. 속성이 바뀌는 경우는 속성이 props나 state 값인 경우가 그럴 수 있는데 이 때도 어차피 props나 state가 바뀐 것이므로 리렌더링이 일어납니다.
넥스트 버젼 질문
0
90
2
로그인시 401 Unauthorized 오류가 뜹니다
0
104
1
무한 스크롤 중 스크롤 튐 현상
0
192
1
특정 페이지 접근을 막고 싶을 때
0
116
2
createGlobalStyle의 위치와 영향범위
0
102
2
인라인 스타일 리렌더링 관련
0
97
2
vsc 에서 npm init 설치시 오류
0
157
2
nextjs 15버전 사용 가능할까요?
0
166
1
화면 새로고침 문의
0
129
1
RTK에서 draft, state 차이가 있나요?
0
160
2
Next 14 사용해도 될까요?
0
455
1
next, node 버전 / 폴더 구조 질문 드립니다.
0
359
1
url 오류 질문있습니다
0
214
1
ssh xxxxx로 우분투에 들어가려니까 port 22: Connection timed out
0
391
1
sudo certbot --nginx 에러
0
1293
2
Minified React error 콘솔에러 (hydrate)
0
477
1
카카오 공유했을 때 이전에 작성했던 글이 나오는 버그
0
255
1
프론트서버 배포 후 EADDRINUSE에러 발생
0
337
1
npm run build 에러
0
525
1
front 서버 npm run build 중에 발생한 에러들
0
398
1
서버 실행하고 브라우저로 들어갔을때 404에러
0
350
2
css 서버사이드 랜더링이 적용되지 않아서 문의 드립니다.
0
290
1
팔로워 3명씩 불러오고 데이터 합쳐주는걸로 바꾸고 서버요청을 무한으로하고있습니다.
0
249
2
해시태그 검색에서 throttle에 관해 질문있습니다.
0
206
1





