Memahami Komponen Pelayan React: Panduan Praktikal

Barbara Streisand
Lepaskan: 2024-10-17 18:46:02
asal
240 orang telah melayarinya

Understanding React Server Components: A Practical Guide

Komponen Pelayan React (RSC) sedang merevolusikan cara kami mendekati pemaparan bahagian pelayan dalam aplikasi React. Panduan ini akan membimbing anda tentang sifatnya, faedahnya dan cara melaksanakannya dalam projek anda.

Apakah Komponen Pelayan React?

Komponen Pelayan React ialah jenis komponen baharu yang dijalankan secara eksklusif pada pelayan. Mereka membuat pada pelayan dan menghantar output mereka kepada pelanggan, menggabungkan faedah pemaparan bahagian pelayan dengan interaktiviti React sebelah klien.

Ciri utama:

  • Pelaksanaan bahagian pelayan
  • Akses terus kepada sumber pelayan
  • Tiada peningkatan dalam saiz bundle sebelah pelanggan
  • Tidak boleh menyatakan atau menggunakan API pelayar sahaja

Faedah Komponen Pelayan React

  1. Peningkatan Prestasi: Pemuatan awal yang lebih pantas dan berkas pelanggan yang lebih kecil.
  2. SEO Dipertingkat: Kandungan yang diberikan pelayan lebih mudah diindeks.
  3. Pengambilan Data Ringkas: Akses terus kepada sumber data sebelah pelayan.
  4. Keselamatan yang Dipertingkat: Operasi sensitif kekal pada pelayan.

Menyediakan Komponen Pelayan React

Sehingga 2024, Komponen Pelayan React paling sesuai digunakan dengan rangka kerja seperti Next.js. Berikut ialah persediaan pantas:

  1. Buat projek Next.js baharu:
   npx create-next-app@latest my-rsc-app
   cd my-rsc-app
Salin selepas log masuk
  1. Pilih untuk menggunakan Penghala Apl apabila digesa.

  2. Buat Komponen Pelayan dalam app/ServerComponent.tsx:

   async function getData() {
     const res = await fetch('https://api.example.com/data')
     return res.json()
   }

   export default async function ServerComponent() {
     const data = await getData()
     return <div>{data.message}</div>
   }
Salin selepas log masuk
  1. Gunakan dalam app/page.tsx:
   import ServerComponent from './ServerComponent'

   export default function Home() {
     return (
       <main>
         <h1>Welcome to React Server Components</h1>
         <ServerComponent />
       </main>
     )
   }
Salin selepas log masuk
  1. Jalankan aplikasi anda:
   npm run dev
Salin selepas log masuk

Melaksanakan Komponen Pelayan React

Mari kita buat contoh yang lebih kompleks - senarai catatan blog yang mengambil data daripada CMS:

// app/BlogList.tsx
import { getBlogPosts } from '../lib/cms'

export default async function BlogList() {
  const posts = await getBlogPosts()

  return (
    <ul>
      {posts.map(post => (
        <li key={post.id}>
          <h2>{post.title}</h2>
          <p>{post.excerpt}</p>
        </li>
      ))}
    </ul>
  )
}

// app/page.tsx
import BlogList from './BlogList'

export default function Home() {
  return (
    <main>
      <h1>Our Blog</h1>
      <BlogList />
    </main>
  )
}
Salin selepas log masuk

Dalam contoh ini, BlogList mengambil data terus daripada CMS pada pelayan, meningkatkan prestasi dan memudahkan kod pihak pelanggan.

Corak Lanjutan

1. Mencampurkan Komponen Pelayan dan Pelanggan

// ClientComponent.tsx
'use client'

import { useState } from 'react'

export default function LikeButton() {
  const [likes, setLikes] = useState(0)
  return <button onClick={() => setLikes(likes + 1)}>Likes: {likes}</button>
}

// ServerComponent.tsx
import LikeButton from './ClientComponent'

export default function BlogPost({ content }) {
  return (
    <article>
      <p>{content}</p>
      <LikeButton />
    </article>
  )
}
Salin selepas log masuk

2. Penstriman untuk UX yang Diperbaiki

import { Suspense } from 'react'
import BlogList from './BlogList'

export default function Home() {
  return (
    <main>
      <h1>Our Blog</h1>
      <Suspense fallback={<p>Loading posts...</p>}>
        <BlogList />
      </Suspense>
    </main>
  )
}
Salin selepas log masuk

3. Pengendalian Ralat

'use client'

export default function ErrorBoundary({ error, reset }) {
  return (
    <div>
      <h2>Something went wrong!</h2>
      <button onClick={reset}>Try again</button>
    </div>
  )
}

// In your page file
import ErrorBoundary from './ErrorBoundary'

export default function Page() {
  return (
    <ErrorBoundary>
      <BlogList />
    </ErrorBoundary>
  )
}
Salin selepas log masuk

Kesimpulan

Komponen Pelayan React menawarkan pendekatan yang hebat untuk membina aplikasi web yang berprestasi, mesra SEO dan selamat. Ia mewakili hala tuju yang menarik untuk pembangunan React, membolehkan pengambilan dan pemaparan data sebelah pelayan sambil mengekalkan interaktiviti React sebelah pelanggan.

Sambil anda meneroka Komponen Pelayan, ingat ia bukan pengganti untuk React pihak pelanggan, tetapi teknologi pelengkap. Gunakannya di tempat yang sesuai dalam seni bina aplikasi anda.

Kami menggalakkan anda untuk bereksperimen dengan Komponen Pelayan dalam projek anda dan nantikan perkembangan selanjutnya dalam ruang yang menarik ini!

Atas ialah kandungan terperinci Memahami Komponen Pelayan React: Panduan Praktikal. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!