1 00:00:02,570 --> 00:00:08,780 Negara dapat menjadi kompleks dan penting untuk memahami hal ini untuk memahami masalah mana yang 2 00:00:08,780 --> 00:00:12,220 dikelola oleh solusi manajemen negara seperti Redux. 3 00:00:12,320 --> 00:00:17,930 Jika kami memiliki aplikasi seperti ini, yang bukan aplikasi yang kami buat tetapi bisa jadi aplikasi yang Anda buat di 4 00:00:17,930 --> 00:00:23,180 mana Anda memiliki dua area berbeda, satu di mana Anda mengelola pengguna Anda, di mana pengguna dapat masuk, 5 00:00:23,180 --> 00:00:28,100 di mana pengguna dapat mengelola mereka dashboard, lihat dashboard mereka dan seterusnya dan di mana Anda memiliki 6 00:00:28,100 --> 00:00:30,100 produk dalam daftar yang dapat ditambahkan 7 00:00:30,100 --> 00:00:35,480 pengguna ke keranjang, maka area ini sebenarnya tidak sepenuhnya independen tetapi di aplikasi Anda, mereka akan ditampilkan di layar 8 00:00:35,480 --> 00:00:38,290 yang berbeda, sehingga sangat terpisah dari satu sama lain. 9 00:00:38,630 --> 00:00:44,630 Tetapi pertanyaan apakah pengguna masuk yang Anda butuhkan di sini mungkin juga relevan di bagian lain 10 00:00:44,630 --> 00:00:46,100 aplikasi Anda dan 11 00:00:46,280 --> 00:00:52,550 saat ini, Anda biasanya harus meneruskan data itu secara manual melalui alat peraga dengan mengirimkannya dari komponen 12 00:00:52,550 --> 00:00:57,930 A ke B ke C ke D sampai ke E di mana Anda mungkin 13 00:00:57,970 --> 00:01:00,490 membutuhkan ini, itu tidak terlalu nyaman. 14 00:01:00,500 --> 00:01:06,980 Alih-alih Anda ingin memiliki pengaturan aplikasi di mana sesuatu berubah, misalnya pengguna masuk atau di aplikasi makanan 15 00:01:06,980 --> 00:01:07,900 kami, Anda 16 00:01:07,910 --> 00:01:15,080 menetapkan filter tertentu dan Anda menyimpannya dan kemudian informasi ini disebarkan ke aplikasi Anda dan secara otomatis diteruskan ke 17 00:01:15,080 --> 00:01:19,420 tempat-tempat di mana Anda membutuhkannya tetapi tidak melalui alat peraga tetapi 18 00:01:19,520 --> 00:01:26,120 dengan beberapa mekanisme di balik layar yang membantu Anda mengenai hal ini dan di situlah Redux adalah solusi 19 00:01:26,120 --> 00:01:31,370 umum yang kami gunakan dalam aplikasi Bereaksi dan Bereaksi Asli untuk mengelola keadaan itu. 20 00:01:31,370 --> 00:01:33,170 Sekarang bagaimana cara kerja Redux? 21 00:01:33,200 --> 00:01:38,420 Pertama-tama Redux adalah perpustakaan pihak ketiga yang dapat Anda tambahkan ke React Native untuk menggunakannya 22 00:01:38,450 --> 00:01:45,050 di sana dan ini semua tentang memiliki toko pusat. Redux memperkenalkan pusat penyimpanan dalam memori, bukan basis 23 00:01:45,110 --> 00:01:51,950 data tetapi dalam memori, dalam memori Javascript sehingga dapat dikatakan di mana status aplikasi Anda, sehingga data 24 00:01:51,950 --> 00:01:58,070 yang berbeda-beda bergantung pada aplikasi Anda dapat disimpan dan kemudian ketika dalam satu komponen, Anda 25 00:01:58,070 --> 00:01:59,280 memiliki sesuatu 26 00:01:59,330 --> 00:02:03,740 yang ingin memanipulasi keadaan itu, misalnya kita menetapkan filter atau menandai 27 00:02:03,770 --> 00:02:10,610 makanan sebagai favorit, kami kemudian mengirimkan tindakan yang disebut, itu paket informasi yang telah ditentukan Anda akan 28 00:02:10,610 --> 00:02:15,840 mengatakan, memiliki tertentu skema yang dapat ditangani oleh Redux yang dikonfigurasi oleh Anda 29 00:02:15,860 --> 00:02:20,800 Tindakan ini mencapai apa yang disebut peredam dan Anda akan menjadi orang yang menulis peredam 30 00:02:20,810 --> 00:02:25,270 sebagai pengembang, sehingga Anda dapat mengontrol jenis tindakan yang diterima peredam, sehingga paket 31 00:02:26,060 --> 00:02:32,180 informasi jenis apa yang dibutuhkan peredam Anda dan peredam itu kemudian menerima tindakan dan mendapatkan negara baru berdasarkan 32 00:02:32,480 --> 00:02:39,670 negara lama yang kemudian memperbarui negara ini disimpan secara terpusat. Jadi peredam ada di sana untuk 33 00:02:39,660 --> 00:02:42,500 memperbarui keadaan pada akhirnya. 34 00:02:42,500 --> 00:02:48,080 Dan ketika toko itu berubah, ketika keadaan di sana berubah, Anda juga dapat memiliki langganan ke toko 35 00:02:48,080 --> 00:02:53,050 itu dari komponen lain, langganan ini akan dipicu saat toko Anda, ketika keadaan Anda di 36 00:02:53,090 --> 00:02:57,340 sana berubah dan keadaan yang diperbarui kemudian diteruskan ke tempat-tempat di aplikasi 37 00:02:57,380 --> 00:03:01,040 Anda, jadi untuk komponen yang tertarik dengan perubahan ini, misalnya 38 00:03:01,040 --> 00:03:05,720 komponen ini di sini bisa tertarik pada beberapa pembaruan, baik itu dapat mengatur berlangganan 39 00:03:05,900 --> 00:03:08,190 dan akan diinformasikan tentang pembaruan dan 40 00:03:08,190 --> 00:03:14,130 mendapatkan status baru melalui alat peraga atau juga dengan React hooks karena Anda akan belajar dalam modul ini. 41 00:03:14,240 --> 00:03:19,620 Inilah cara kerja Redux dan itulah ide di balik Redux. 42 00:03:19,700 --> 00:03:27,020 Sekarang satu catatan penting, jika Anda sedikit lebih jauh ke Bereaksi, Anda juga mungkin tahu React Context 43 00:03:27,050 --> 00:03:29,770 API yang dibangun ke Bereaksi. 44 00:03:29,810 --> 00:03:36,980 Ini juga dapat digunakan untuk beberapa keadaan di belakang layar dan manajemen data, tetapi ini bukan pengganti yang baik untuk semua 45 00:03:36,980 --> 00:03:39,710 kasus penggunaan di mana Anda menggunakan Redux. 46 00:03:39,710 --> 00:03:45,160 Saya tidak akan menyelami lebih dalam tentang ini di sini karena ini bukan benar-benar kursus tentang masuk dan keluar dari 47 00:03:45,170 --> 00:03:50,930 berbagai konstruksi Bereaksi, sebaliknya kami ingin mempelajari Bereaksi Asli di sini tetapi terlampir, Anda akan menemukan beberapa sumber daya yang membantu Anda 48 00:03:50,930 --> 00:03:58,030 dengan perbandingan itu antara Bereaksi Konteks API dan Redux dan kapan menggunakannya. Dalam modul ini, kita akan menggunakan Redux yang sangat fleksibel, yang 49 00:03:58,050 --> 00:04:02,490 pasti bisa kita gunakan dan saya akan menunjukkan kepada Anda bagaimana cara mengaturnya dengan React 50 00:04:02,490 --> 00:04:05,870 Native dan bagaimana Anda kemudian tentu saja dapat bekerja dengannya.