Upgrade to Pro — share decks privately, control downloads, hide ads and more …

React Context Solusi Elegan Pengganti Props yan...

Avatar for Nur Istifariyati Nur Istifariyati
July 27, 2025
47

React Context Solusi Elegan Pengganti Props yang Bersarang

Avatar for Nur Istifariyati

Nur Istifariyati

July 27, 2025

Transcript

  1. Todayʼs Topics • Permasalahan prop drilling • Pengenalan React Context

    API • Cara membuat dan menggunakan Provider & Consumer • Alternative context dengan state management lainnya • Live Demo
  2. Kenalan sama React Context!!! Kalau kamu sering ketemu kasus kaya

    gini: • 🔁 Terlalu banyak komponen perantara • 🧩 Data numpang lewat doang • 🤕 Sulit dirawat dan debug Berarti sudah saatnya kamu kenalan sama React Context
  3. Apa tujuan utama dari React.Context? A. Meningkatkan performa secara signifikan

    B. Menyimpan data ke local Storage secara otomatis C. Menggunakan state antar component D. Memungkinkan React berjalan dengan framework lain
  4. React.Context “Context provides a way to pass data through the

    component tree without having to pass props down manually at every level.ˮ - Dokumentasi React
  5. Membangun Pondasi React.Context Ada tiga komponen utama yang selalu terlibat

    dalam penggunaan Context: • createContext • Provider • Consumer Tanpa ketiganya, Context gak akan jalan.
  6. createContext createContext - pondasi utama dalam membangun React Context. Dari

    sinilah semua komunikasi data lewat Context dimulai.
  7. Provider Komponen yang memungkinkan kita untuk mendeklarasikan data apa yang

    hendak disimpan secara global dalam cakupan hierarki komponen.
  8. Consumer Komponen yang memungkinkan kita untuk mendapatkan data yang disimpan

    pada Provider di dalam komponen mana pun selama berada di hirarki komponen.
  9. Di mana sebaiknya kita meletakkan Provider>? A. Di dalam komponen

    paling kecil B. Di bagian luar aplikasi untuk mencakup semua komponen yang butuh data C. Tepat di bawah useEffect D. Di dalam return statement useContext
  10. Context Bukan Solusi Untuk Segalanya “Jika Anda hanya memiliki palu,

    apa pun masalah yang ada akan terlihat seperti paku.ˮ - Mark Twain.
  11. React Context Issue 🔄 Re-render berlebihan: semua komponen yang pakai

    context akan render ulang meski cuma satu bagian data yang berubah. 🧠 Sulit di-maintain: makin banyak context = makin banyak provider bertumpuk. 🧪 Debugging terbatas: tidak ada devtools resmi seperti Redux DevTools.
  12. React Context “Context cocok untuk kasus sederhana, tapi... bagaimana kalau

    aplikasi kita makin besar dan state yang dikelola makin kompleks?ˮ
  13. Alternative State Management • Redux → cocok untuk aplikasi besar,

    mendukung middleware, dan punya ekosistem kuat • Zustand → lebih ringan dan simpel, cocok untuk project modern • Recoil, Jotai, MobX, dan lainnya → masing-masing punya pendekatan unik dalam mengelola state
  14. Apa kasus fitur yang cocok untuk disimpan di dalam React

    Context? A. Formulir B. Fitur Dropdown C. User Preference D. Status Autentikasi E. Dynamic List Item