React's useContexthook adalah alat yang ampuh untuk berbagi status antar komponen tanpa harus meneruskan data melalui rangkaian props yang panjang. Dengan useContext, Anda dapat dengan mudah berbagi status di seluruh pohon komponen, menjadikannya alat yang berguna untuk mengelola status global.
Pada artikel ini, kita akan menjelajahi dasar-dasar hook useContextdan melihat bagaimana kita dapat menggunakannya untuk mengelola status dalam aplikasi React kita.
useContext?useContextadalah hook React bawaan yang memungkinkan Anda menggunakan data dari konteks yang telah dibuat oleh komponen induk. Konteks adalah objek yang menyimpan beberapa data status bersama yang dapat diakses oleh komponen apa pun yang merupakan turunan dari komponen yang membuat konteks.
Pengait useContextmengambil objek konteks sebagai argumennya dan mengembalikan nilai konteks saat ini. Ini berarti bahwa setiap pembaruan pada konteks akan secara otomatis memicu perenderan ulang semua komponen yang menggunakannya.
useContext?Untuk menggunakan useContext, pertama-tama kita perlu membuat objek konteks. Kita bisa melakukan ini dengan menggunakan createContextmetode dari Reactperpustakaan. Berikut contohnya:
import React from 'react';
const MyContext = React.createContext();
import React from 'react';
const MyContext = React.createContext();
function App() {
const [count, setCount] = React.useState(0);
return (
<MyContext.Provider value={{ count, setCount }}>
<div>
<h1>Count: {count}</h1>
<Counter />
</div>
</MyContext.Provider>
);
}
function Counter() {
const { count, setCount } = React.useContext(MyContext);
const increment = () => {
setCount(count + 1);
};
return (
<div>
<button onClick={increment}>Increment</button>
</div>
);
}
Komponen Appmembungkus komponen turunannya di dalam MyContext.Providerkomponen dan meneruskan nilai saat ini dari status bersama sebagai valuepenyangga. Dalam hal ini, nilainya adalah objek yang berisi countstatus dan setCountfungsi.
Komponen Countermengkonsumsi MyContextobjek menggunakan useContexthook dan mengekstrak countstatus dan setCountfungsi dari objek konteks. Kami kemudian menggunakan incrementfungsi untuk memperbarui status bersama saat tombol diklik.
useContext?useContextpaling berguna untuk mengelola keadaan global yang perlu diakses oleh banyak komponen di seluruh aplikasi. Ini adalah pilihan yang baik untuk kasus-kasus di mana pengeboran prop akan menjadi rumit atau di mana Anda ingin menghindari status melewati beberapa lapisan komponen.
useContextjuga merupakan pilihan yang baik untuk kasus di mana Anda perlu meneruskan fungsi melalui pohon komponen. Dengan meneruskan fungsi melalui objek konteks, Anda dapat menghindari keharusan meneruskannya melalui beberapa lapisan komponen.
Pengait useContextadalah alat yang ampuh untuk mengelola keadaan global.
Saya harap banyak yang menjelaskan kepada Anda semua.
Pendahuluan Stroke adalah keadaan darurat medis yang dapat menyerang siapa saja kapan saja. Itu terjadi ketika aliran darah ke bagian otak terganggu, yang menyebabkan hilangnya fungsi otak secara tiba-tiba.
Minggu ini, saya menerima email dari anggota daftar email harian. Mereka ingin tahu: Sumber daya apa yang Anda kunjungi setiap hari, setiap minggu, dan setiap bulan? Pertanyaan bagus! Saya senang untuk mencoba membagikan beberapa wawasan tentang alur kerja saya & sumber daya teratas yang saya gunakan.
Di dunia yang sangat terhubung saat ini, sistem media memainkan peran penting dalam membentuk opini publik, dan akibatnya, dalam pengambilan keputusan yang demokratis. Dalam analisisnya yang mendalam tentang ekonomi politik komunikasi, cendekiawan Robert McChesney menantang kebijaksanaan konvensional dan menyajikan apa yang disebutnya sebagai “lima kebenaran” tentang media.
Pikiran rasional mana pun tahu bahwa lingkaran politik dan media didominasi oleh kiri, bahkan paling kiri, suatu keadaan yang menciptakan ketidakseimbangan dalam wacana politik. Di bidang agama, ketidakseimbangan ini terlihat jelas: surat kabar dan jaringan sayap kiri tidak terburu-buru membela iman Kristen.
Apa yang lama sekarang menjadi baru lagi dan apa yang dulu berkilau berkilau sekarang terasa kusam. Saya tidak berbicara tentang jeans JNCO yang kembali populer di antara anak-anak keren di pusat kota bersama dengan mode akhir 1990-an lainnya.
Saya baru-baru ini berada di Linkedin, jejaring sosial profesional terbesar di dunia, dan menemukan postingan dari desainer lepas yang saya ikuti yang menarik perhatian saya. Mereka semua memposting foto dari pesawat terbang, di pantai dengan laptop mereka, dari kolam renang, dan kantor dengan pemandangan menakjubkan.