useMemo는 Redux를 제공합니다
P粉845862826
P粉845862826 2023-08-25 21:04:43
0
2
625
<p>저는 Redux를 처음 사용하며 웹 애플리케이션의 성능을 최대화하고 싶습니다. </p> <p>나중에 표시하기 위해 변수에 저장하는 상태가 redux에 있습니다. </p> <p>코드는 다음과 같습니다. </p> <pre class="brush:php;toolbar:false;">constmetricsState = useSelector((state: MetricsStateObject) => state.MetricsState); const myMetrics =metricState.myMetrics;</pre> <p>useMemo는 데이터가 변경되지 않은 경우 다시 렌더링하지 않음으로써 성능을 향상시키는 것을 발견했습니다. </p> <p>그래서 <code>const myMetrics = useMemo(() =>metricsState.myMetrics, [metricsState.myMetrics]);</code>가 좋은 습관인지 아니면 전혀 쓸모가 없는지 궁금합니다. ? </p> <p>시간을 내주셔서 감사합니다. </p>
P粉845862826
P粉845862826

모든 응답(2)
P粉146080556

결론을 먼저 말씀드리자면, 전혀 쓸모가 없습니다.

왜? metricsState.myMetrics只是一个取值 프로세스에는 비용이 많이 드는 계산이 포함되지 않기 때문입니다.

하지만 useMemo 자체적으로도 일정량의 계산량이 소모됩니다.

그래서 이건 성급한 최적화인 것 같아요

P粉726133917

useMemo 모든 렌더링을 실행하고 싶지 않은 값비싼 계산의 경우. 좋아요

으아악

또는 그런 것. megaBigArray가 변경될 때만 이 변수를 평가합니다.

귀하의 경우 코드는 렌더링할 때마다 실행되지만 useSelector 렌더링은 선택한 매장 섹션이 변경될 때만 트리거되어야 합니다. 그러니 그것 없이도 잘 지낼 수 있어야합니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!