리액트 데브툴이랑 브라우저 개발자도구 페인트 플래시 기준으로
리렌더링 테스트 하는디
데브툴 리렌더는 계속 뜨는데 (농담 안하고 초당 523번 정도 랜더링댐) 근데 페인트 플래시는 내가 의도한 동작대로 댐
둘중에 프레임 드랍이랑 버벅거리는거에 영향 주는거는 어느 쪽임
리렌더는 1초에 523번 일어나도 페인트 플래시 멀쩡하면 영향 없다고 바야하나
시피유 성능 20분에 1로 낮추면 좀 버벅 거리긴 하는데 큰 영향은 없거든 실제로 눈에 보기에 6분의 1로 낮추면 멀쩡할때랑 시각적으로 아무런 차이도 업는데
수치로 보자면 데브툴에는 엄청 심하게 리랜더 일어나거든
근데 이러면 나중에 지금 로직에서 기능 확장햇을때 로직 그대로 쓰면 언젠가는 앱 터지는건지 아니면 페인트 플래시랑 프레임 레이트만 보고 멀쩡하면 그냥 계속 가도 되는건지 아는 사람잇음?
어디 useEffect 잘못썻나 프레임드랍은 실제 dom 변경때매일어나는겨 - dc App
의존성 확인해보고 최적화 ㄱㄱ - dc App
돔은 실제로 안 바뀌는데 리렌더만 무한으로 도는 상황이라 유즈이펙트가 잘못댄거 보다 rAF써서 그런거 같거든 유즈이펙트에서 사이드이펙트 생기는건 메모랑 디펜던시어레이 관리해가지고 최대한 줄엿는데 그래도 리렌더 폭주해서 넘 헷갈림 이게 실제 앱에 영향을 미치는 리랜더인지 가상돔에서만 생기는 리랜더인지 모르겟음
나도 비슷한문제 있었는데ㅋㅋ - dc App
타이머를 ref로 하면 아마될수도? 글고 리액트 렌더링과정 공부해바 virtual dom, 재조정, diffing - dc App
함해볼게
해보고 알려줭 - dc App
아 나는 타이머가 변경되면서 프레임마다 리렌더링되는거여서 그렇게 해결했는데 암튼 매프레임마다 상태 변경되는부분 고치면 될거야 - dc App
난 rAF 루프마다 css 바뀌는거라 세터로 퍼센트 갱신해서 리렌더 계속 일어나는건 어쩔수 업는거 가틈 방금 컴퓨터 켜서 코드 봣는데 내가 레프로 타이머 참조해놧더라구 쥑피티한테 물어본걸로 레프랑 돔 직접 변경하는걸로 가라는데 저능아라 공부 더 해야할듯 쩝 ..
아 그건 간단함 상태로 퍼센트 관리하지말고 그냥 변수로 하면댐 - dc App
그게 진짜임?
ㅋㅋㅋ 해보고오삼 - dc App
이게 되네
굿굿 - dc App