Проверяет знание обязательного компонента-обертки для React.lazy и понимание механизма отложенной загрузки в React.
React.lazy — это встроенная функция React, которая позволяет загружать компоненты только тогда, когда они действительно нужны. Это называется отложенной загрузкой или code splitting. Вместо того чтобы включать весь код в один большой бандл, вы разбиваете приложение на части, которые подгружаются по требованию. Это уменьшает начальный размер загрузки и ускоряет старт приложения.
Suspense — это компонент-обертка, который сообщает React, что внутри него есть асинхронная операция (например, загрузка ленивого компонента). Пока загрузка не завершена, Suspense отображает запасной контент, переданный через проп fallback. Без Suspense React не знает, что показать во время ожидания, и выбрасывает ошибку. Поэтому React.lazy всегда используется в паре с Suspense.
import React, { Suspense, lazy } from 'react';
const Dashboard = lazy(() => import('./Dashboard'));
function App() {
return (
<Suspense fallback={<div>Загрузка...</div>}>
<Dashboard />
</Suspense>
);
}В этом примере компонент Dashboard загрузится только тогда, когда App будет отрендерен. Пока Dashboard загружается, пользователь увидит текст «Загрузка...».
React.lazy и Suspense полезны в больших приложениях, где есть маршруты или тяжелые компоненты, которые не нужны на старте. Например, страница админки, графики или редактор кода могут быть загружены лениво. Это улучшает производительность и снижает нагрузку на сеть.
Используйте React.lazy вместе с Suspense для отложенной загрузки компонентов. Это стандартный способ реализации code splitting в React и обязательное условие для корректной работы ленивой загрузки.
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию