InfraHub

Форк
0
/
Posts.tsx 
29 строк · 966.0 Байт
1
import { useState, useEffect } from 'react'
2
import { PostEditor } from './PostEditor'
3
import { PostList } from './PostList'
4

5
export function Posts() {
6
  const [posts, setPosts] = useState([])
7

8
  useEffect(() => {
9
    // Здесь мы будем загружать посты с бэкенда
10
    // Например: 
11
    // fetch('/api/posts').then(res => res.json()).then(setPosts)
12
  }, [])
13

14
  const handleNewPost = (newPost) => {
15
    // Здесь мы будем отправлять новый пост на бэкенд и обновлять список постов
16
    // Например:
17
    // fetch('/api/posts', { method: 'POST', body: JSON.stringify(newPost) })
18
    //   .then(res => res.json())
19
    //   .then(post => setPosts([post, ...posts]))
20
  }
21

22
  return (
23
    <div>
24
      <h2 className="text-2xl font-bold mb-4">Посты и новости</h2>
25
      <PostEditor onSubmit={handleNewPost} />
26
      <PostList posts={posts} />
27
    </div>
28
  )
29
}

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.