Senior
Hoe memoiseer je een statisch JSX-blok binnen een component zonder deze in een aparte component te plaatsen? Welke afhankelijkheidsarray is nodig?
sobes.tech AI
Antwoord van AI
Чтобы замемоизировать статичный JSX-блок внутри компонента без вынесения в отдельный компонент, можно использовать хук useMemo из React.
Пример:
import React, { useMemo } from 'react';
function MyComponent() {
const staticBlock = useMemo(() => (
<div>
<h1>Статичный заголовок</h1>
<p>Этот блок не зависит от пропсов и состояния.</p>
</div>
), []); // Пустой массив зависимостей
return (
<div>
{staticBlock}
{/* Другой JSX */}
</div>
);
}
Здесь массив зависимостей пустой ([]), так как блок статичен и не зависит от внешних данных. Это гарантирует, что JSX-блок будет вычислен один раз при монтировании компонента и не будет пересоздаваться при ререндере.