Логотип YeaHub

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

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

Тренажёр

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

Обучение

Навыки

Войти

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

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

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про Next.js: fetching, staticprops

Чем отличаются getStaticProps, getServerSideProps и getStaticPaths?

Вопрос проверяет понимание специальных функций Next.js для управления данными и генерацией страниц.

Короткий ответ

getStaticProps получает данные для статических страниц во время сборки. getServerSideProps получает данные при каждом запросе на сервере. getStaticPaths определяет какие динамические пути должны быть предварительно сгенерированы для статических страниц.

Длинный ответ

Эти функции являются основными инструментами для работы с данными в Next.js.

Отличия и назначение:

  1. getStaticProps

    • Используется для SSG (статической генерации)

    • Запускается во время сборки приложения

    • Данные кэшируются и используются для всех запросов

export async function getStaticProps() {
  const data = await fetchData()
  return { props: { data } }
}
  1. getServerSideProps

    • Используется для SSR (серверного рендеринга)

    • Запускается при каждом запросе

    • Данные всегда актуальны

export async function getServerSideProps(context) {
  const userData = await fetchUserData(context.req)
  return { props: { userData } }
}
  1. getStaticPaths

    • Используется вместе с getStaticProps для динамических маршрутов

    • Определяет какие конкретные пути должны быть сгенерированы статически

export async function getStaticPaths() {
  const paths = await getAllPostIds()
  return { paths, fallback: false }
}

Вывод: Выбор функции зависит от требований к актуальности данных и производительности.

Уровень

  • Рейтинг:

    2

  • Сложность:

    6

Навыки

  • Next.js

    Next.js

Ключевые слова

#fetching

#staticprops

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