Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Специализация

Python Backend Developer

Java Backend Developer

Node.js Backend Developer

Golang Backend Developer

React Frontend Developer

Посмотреть все

Выберите навыки

React

React

JavaScript

JavaScript

Git

Git

Redux

Redux

Webpack

Webpack

Посмотреть все

Сложность

1-3

4-6

7-8

9-10

Рейтинг вопросов

1

2

3

4

5

Подпишись на React Developer в телеграм

Вопросы React Frontend Developer


Как реализовать ленивую загрузку (lazy loading) элементов на странице с помощью атрибута loading? Какие есть альтернативные методы?

Ленивая загрузка — это техника, которая позволяет откладывать загрузку изображений или фреймов до тех пор, пока они не появятся в видимой области экрана. Атрибут loading="lazy" в теге <img> или <iframe> автоматически откладывает загрузку элемента. Это сокращает время начальной загрузки страницы и снижает использование трафика. Альтернативные методы включают использование Intersection Observer API для более гибкого контроля над загрузкой элементов.

Подробнее

Объясните концепцию code splitting и lazy loading в React.

Code splitting — это техника, позволяющая разбивать приложение на небольшие части, которые загружаются по мере необходимости. Lazy loading (ленивая загрузка) загружает эти части только тогда, когда они действительно нужны, что помогает уменьшить размер начальной загрузки и повышает скорость работы приложения.

Подробнее

Как работает ленивый роутинг (lazy loading) в React Router DOM?

Ленивый роутинг загружает компоненты маршрутов только при их необходимости. Это достигается использованием функции React.lazy в сочетании с динамическим импортом (import()), что позволяет уменьшить начальный размер бандла.

Подробнее

Как передавать данные через loader в data маршрутах?

loader в data маршрутах используется для загрузки данных перед рендерингом компонента. Он возвращает данные, которые затем доступны через хук useLoaderData внутри компонента.

Подробнее

Как динамические импорты и lazy loading влияют на размер бандла?

Динамические импорты и lazy loading позволяют разбивать код на части и загружать их по мере необходимости. Это уменьшает размер стартового бандла и ускоряет первый рендер. Пользователь загружает только тот код, который реально нужен в текущий момент. В результате приложение становится быстрее на старте.

Подробнее

Как браузер обрабатывает скачивание файлов (download через ссылку)?

Как preload и prefetch влияют на загрузку?

Где правильно устанавливать loading состояние — внутри try или снаружи?

Как инкапсулировать загрузку данных (loading, error, data)?

Чем отличаются свойства onload и onerror?

  • Рейтинг:

    3

  • Сложность:

    3

Когда пользователь кликает на ссылку с атрибутом `download`, браузер инициирует GET-запрос на указанный URL. Если сервер отвечает с корректными заголовками (например, `Content-Disposition: attachment`), браузер интерпретирует ответ как файл для сохранения, а не для отображения. Затем он показывает стандартное диалоговое окно сохранения файла в локальную файловую систему пользователя. Этот процесс обходит политику безопасности CORS для ссылок с тем же origin.
Подробнее
  • Рейтинг:

    4

  • Сложность:

    3

Атрибуты preload и prefetch — это подсказки для браузера, указывающие, как загружать ресурсы заранее. Preload говорит браузеру немедленно загрузить критически важный ресурс (например, шрифт или скрипт), который понадобится на текущей странице. Prefetch предлагает браузеру загрузить ресурс для будущей навигации (например, для следующей страницы) в фоновом режиме, когда есть свободная пропускная способность сети. Это позволяет ускорить отображение текущей страницы и сделать переходы между страницами быстрее.
Подробнее
  • Рейтинг:

    4

  • Сложность:

    3

Состояние загрузки (loading) следует устанавливать в true перед началом асинхронной операции, до блока try. В блоке finally или после try-catch его нужно сбросить в false. Это гарантирует, что loading будет активным во время выполнения запроса и корректно отключится даже при возникновении ошибки.
Подробнее
  • Рейтинг:

    4

  • Сложность:

    4

Для инкапсуляции состояний loading, error и data используется кастомный хук, который управляет асинхронным запросом. Хук возвращает объект с полями data, loading и error. Это позволяет переиспользовать логику загрузки в разных компонентах и избежать дублирования кода.
Подробнее
  • Рейтинг:

    3

  • Сложность:

    2

Свойства onload и onerror — это обработчики событий, которые вызываются при загрузке или ошибке загрузки ресурса (например, изображения, скрипта). onload срабатывает, когда ресурс успешно загружен, а onerror — когда произошла ошибка (например, файл не найден или сеть недоступна). Они позволяют выполнить код после завершения загрузки или при возникновении проблемы.
Подробнее
  • Рейтинг:

    4

  • Сложность:

    7

  • Рейтинг:

    5

  • Сложность:

    6

  • Рейтинг:

    5

  • Сложность:

    6

  • Рейтинг:

    2

  • Сложность:

    8

  • Рейтинг:

    5

  • Сложность:

    6