React Academy · Pelajaran

Bila Tidak Patut Menggunakan Konteks

Kenal pasti keadaan apabila penghantaran prop, gubahan atau pengurus keadaan lebih sesuai.

Pelajaran 4 daripada 413 langkah

Bila Tidak Patut Menggunakan Konteks ialah pelajaran React Academy percuma di CoddyKit. Ini ialah pelajaran 4 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran React Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus React Academy merangkumi sejumlah 4 pelajaran.

Selamat datang

Dalam pelajaran ini, Anda akan belajar apabila React Context bukan alat yang sesuai serta mengenal pasti situasi apabila penghantaran sifat, penggubahan atau pengurus state menjadi pilihan yang lebih baik dan mudah.

Konteks Bukan Penyelesaian Ajaib

Konteks sering digunakan secara berlebihan. Pembangun menggunakannya untuk mengelakkan penghantaran sifat, tetapi ini mewujudkan kebergantungan tersembunyi, menyukarkan pengujian komponen dan boleh menjejaskan prestasi.

Apabila Sifat Lebih Baik

Jika nilai digunakan oleh 1–3 komponen yang bersarang rapat, penghantaran sifat lebih mudah, lebih jelas dan lebih mudah dijejaki. Konteks menambah kod asas penyedia serta menyembunyikan aliran data.
// Don't need Context for this
function Page() {
  const [color, setColor] = useState('blue');
  return <Header color={color} />; // simple, clear
}

Apabila Komposisi Lebih Baik

Jika anda perlu mengelakkan penggerudian sifat melalui 3 tahap atau lebih, cuba gunakan komposisi terlebih dahulu: hantarkan pengguna yang telah dipaparkan sepenuhnya sebagai sifat. Konteks tidak diperlukan dan aliran data kekal jelas.

Konteks Menyebabkan Gandingan Tersembunyi

Komponen yang memanggil useContext(UserCtx) tidak boleh digunakan semula tanpa membalutnya dalam UserProvider. Sifat menjadikan kebergantungan jelas — anda boleh melihat dengan tepat perkara yang diperlukan oleh komponen melalui tandatangannya.

Kemas Kini Berfrekuensi Tinggi

Jangan gunakan Konteks untuk nilai yang berubah berkali-kali sesaat, contohnya kedudukan tetikus atau kemajuan animasi. Setiap perubahan menyebabkan semua pengguna dipaparkan semula. Sebaliknya, gunakan rujukan, stor luaran atau pustaka berasaskan isyarat.

Konteks Bukan Pengurus Keadaan

Konteks hanya mengagihkan nilai — ia tidak mempunyai cache terbina dalam, alat pembangunan atau perisian tengah. Untuk keadaan dikongsi yang kompleks dan kerap berubah, gunakan Zustand, Redux atau Jotai kerana semuanya direka untuk tujuan ini.

Keadaan Pelayan Tidak Sesuai dalam Konteks

Data yang diambil daripada pelayan, seperti senarai pengguna atau kiriman, tidak sesuai disimpan dalam Konteks. React Query, SWR atau RTK Query mengurus keadaan pelayan dengan cache, pengambilan semula di latar belakang dan keadaan ralat — Konteks tidak mengurus mana-mana perkara ini.

Keadaan Borang Tidak Sesuai dalam Konteks

Mengurus medan borang dalam Konteks menyebabkan setiap ketukan kekunci memaparkan semula semua pengguna konteks. Gunakan keadaan komponen setempat atau pustaka borang seperti React Hook Form.

Apabila Konteks IS Alat yang Tepat

Konteks sesuai digunakan untuk keadaan pengguna atau pengesahan semasa, tema (cerah/gelap), lokal/i18n dan nilai rentas komponen stabil yang dibaca oleh banyak komponen tetapi jarang berubah.

Semakan Pantas

Jenis data manakah yang LEAST sesuai disimpan dalam React Context?

Imbas Kembali

Gunakan Konteks untuk nilai stabil merentas komponen seperti pengesahan, tema dan lokal. Utamakan sifat untuk penghantaran melalui 1–3 tahap. Utamakan komposisi untuk mengelakkan penggerudian sifat. Gunakan React Query untuk keadaan pelayan dan Zustand/Redux untuk keadaan dikongsi yang kompleks.

Kursus Selesai

Tahniah! Anda telah menamatkan **Corak Konteks & Prestasi React**. Kini anda tahu cara memisahkan konteks, memoisasikan nilai, menggunakan pemilih dan — yang sama pentingnya — mengetahui masa untuk tidak menggunakan Konteks langsung.
Percuma untuk bermula

Pelajari React dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
88
Pelajaran
324

Soalan Lazim

Adakah pelajaran “Bila Tidak Patut Menggunakan Konteks” percuma?

Ya — teks penuh “Bila Tidak Patut Menggunakan Konteks” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus React Academy, tingkat taraf kepada CoddyKit PRO. Kursus React Academy merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Bila Tidak Patut Menggunakan Konteks”?

Kenal pasti keadaan apabila penghantaran prop, gubahan atau pengurus keadaan lebih sesuai. Anda berlatih React Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan React Academy?

Tiada pengalaman terdahulu diperlukan. Pembelajaran React Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 4 daripada 4.

Berapa lamakah pelajaran “Bila Tidak Patut Menggunakan Konteks” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran React Academy ini?

Ya. Setiap pelajaran React Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Memisahkan Konteks untuk Mengehadkan Pemaparan Semula
  2. Memoisasi Nilai Konteks dengan useMemo
  3. Corak Pemilih Konteks
  4. Bila Tidak Patut Menggunakan Konteks
← Kembali ke React Academy