Sobes.tech
Middle
33

Компоненти серверӣ ва мизоҷ дар Next.js чист? Чӣ гуна компонентии мизоҷӣ эълон карда мешавад? Оё имкон дорад, ки компонентии сервериро дар компонентии мизоҷ ва баръакс ҷойгир кунем?

Ширкатҳо дар куҷо пурсиданд
News Media Holdind

Ҷавоб аз AI

sobes.tech AI

В Next.js компоненты могут быть серверными (Server Components) и клиентскими (Client Components).

  • Серверный компонент рендерится на сервере и не содержит клиентского состояния или эффектов. Он может напрямую обращаться к базе данных и API без передачи данных на клиент.

  • Клиентский компонент рендерится на клиенте, поддерживает состояние, хуки React (например, useState, useEffect) и взаимодействие с пользователем.

Чтобы объявить клиентский компонент, в начале файла нужно добавить директиву:

'use client';

import React, { useState } from 'react';

export default function ClientComponent() {
  const [count, setCount] = useState(0);
  return <button onClick={() => setCount(count + 1)}>Clicked {count} times</button>;
}

Вложенность:

  • Серверный компонент может вкладывать клиентский компонент, так как серверный компонент рендерится на сервере и может отдавать клиентский компонент для рендера на клиенте.
  • Клиентский компонент не может напрямую содержать серверный компонент, так как серверный компонент не поддерживает клиентские хуки и состояние.

Таким образом, вложенность возможна только в направлении серверный → клиентский.