1 00:00:02,220 --> 00:00:07,770 Negara adalah konsep yang krusial dan bereaksi, dan karena itu penting bagi saya agar Anda memahami cara 2 00:00:07,770 --> 00:00:08,160 kerjanya. 3 00:00:08,670 --> 00:00:14,340 U. S. state adalah bagaimana Anda mengatur state dan komponen fungsional dan state Anda bisa apa saja. 4 00:00:14,350 --> 00:00:15,510 Tidak harus berupa array. 5 00:00:15,570 --> 00:00:20,580 Itu bisa berupa teks, angka, objek, array, boolean, hal-hal seperti itu. 6 00:00:21,570 --> 00:00:24,780 Status penggunaan selalu mengembalikan array dengan dua elemen. 7 00:00:24,870 --> 00:00:30,450 Apa pun status Anda, jika status Anda adalah status tidak digunakan, masih tetap mengembalikan array dengan tepat dua 8 00:00:30,450 --> 00:00:30,930 elemen. 9 00:00:31,380 --> 00:00:35,760 Karena elemen pertama maka selalu adalah snapshot keadaan terbaru Anda. 10 00:00:36,210 --> 00:00:43,020 Dan elemen kedua adalah fungsi yang memungkinkan Anda untuk memperbarui snapshot keadaan itu setiap kali Anda memperbarui 11 00:00:43,080 --> 00:00:44,350 snapshot keadaan. 12 00:00:44,520 --> 00:00:46,020 Bereaksi akan melakukan dua hal. 13 00:00:46,620 --> 00:00:49,950 Ini akan memperbarui data negara yang disimpan secara internal ini. 14 00:00:50,250 --> 00:00:56,130 Jadi, misalnya, di sini, ketika kita menambahkan tujuan baru pertama kita, itu akan menggantikan keadaan awal dengan keadaan 15 00:00:56,130 --> 00:00:57,090 baru kita. 16 00:00:57,210 --> 00:01:00,150 Dalam hal ini, dengan array baru yang kami buat dengan Concat. 17 00:01:00,870 --> 00:01:07,500 Dan begitu itu memperbarui data secara internal, itu akan memanggil fungsi komponen ini lagi dan menjalankan 18 00:01:07,500 --> 00:01:08,640 seluruh fungsi. 19 00:01:08,850 --> 00:01:11,250 Dan karenanya semua diterjemahkan ulang J ini sebagai kode X. 20 00:01:12,020 --> 00:01:14,400 Sekarang di bawah tenda, itu tidak akan membuat seluruh dom. 21 00:01:14,400 --> 00:01:20,250 Itu hanya akan memeriksa bagian mana dari DOM yang perlu diperbarui, tetapi akan mengevaluasi ulang seluruh komponen. 22 00:01:20,920 --> 00:01:27,030 Ini juga berarti, tentu saja, bahwa ia mengeksekusi kembali menggunakan negara tetapi menggunakan negara bekerja secara internal 23 00:01:27,030 --> 00:01:32,400 sehingga hanya menginisialisasi keadaan mapan ketika komponen diberikan untuk pertama kalinya dan untuk daur ulang 24 00:01:32,400 --> 00:01:33,420 Rehren berikutnya. 25 00:01:33,690 --> 00:01:39,630 Itu hanya mengeluarkan snapshot keadaan terbaru dan pada dasarnya mengabaikan nilai awal yang kami atur di sini. 26 00:01:41,580 --> 00:01:43,770 Beginilah cara negara bekerja. 27 00:01:44,370 --> 00:01:49,140 Sekarang, penting untuk memahami bahwa cara memperbarui properti kami dalam skenario ini bukan 28 00:01:49,140 --> 00:01:50,310 cara terbaik. 29 00:01:50,670 --> 00:01:52,980 Jadi digandakan dan dikomentari. 30 00:01:53,160 --> 00:01:54,900 Jadi apakah kita masih memilikinya untuk referensi. 31 00:01:54,930 --> 00:01:56,880 Tapi kami juga melihat pendekatan yang lebih baik. 32 00:01:57,390 --> 00:01:58,830 Pendekatan ini jelas berhasil. 33 00:01:58,950 --> 00:02:00,600 Dan dalam banyak kasus, ini akan berhasil. 34 00:02:01,170 --> 00:02:06,750 Tetapi Anda harus menyadari bahwa pembaruan status seluruh negara bagian ini memberikan reaksi. 35 00:02:07,230 --> 00:02:08,880 Bukankah akhirnya dikelola oleh reaksi. 36 00:02:09,330 --> 00:02:15,180 Dan ketika Anda aset dan Anda menyatakan itu tidak menghentikan semuanya dan segera memasukkan kembali aplikasi Anda. 37 00:02:15,510 --> 00:02:17,910 Alih-alih, ini adalah jadwal untuk menyatakan pembaruan. 38 00:02:18,150 --> 00:02:23,550 Dan jika Anda memiliki aplikasi dengan banyak pembaruan status yang sedang berlangsung dan banyak pekerjaan yang 39 00:02:23,820 --> 00:02:29,280 dilakukan, yang bukan merupakan kasus dan apakah aplikasi tetapi dapat menjadi kasus dan aplikasi lain, maka pembaruan 40 00:02:29,340 --> 00:02:32,010 negara Anda mungkin ditunda oleh beberapa milidetik. 41 00:02:32,580 --> 00:02:39,780 Itu berarti bahwa sebenarnya mungkin jika pengguna mengklik, menambahkan emas beberapa kali, Skold inti, yang saat ini 42 00:02:39,780 --> 00:02:45,900 ditampilkan di layar, mungkin bukan keadaan terbaru kami karena tidak semua pembaruan keadaan mungkin 43 00:02:45,900 --> 00:02:46,950 telah diproses. 44 00:02:47,640 --> 00:02:53,970 Oleh karena itu, ada bentuk yang lebih baik dari memperbarui ini daripada meneruskan data negara baru kami untuk menetapkan tujuan kursus. 45 00:02:54,360 --> 00:03:01,710 Anda dapat melewati suatu fungsi untuk menetapkan tujuan kursus, sebuah fungsi yang menerima status terkini untuk tujuan kursus dan 46 00:03:01,800 --> 00:03:05,670 harus mengembalikan snapshot keadaan baru dan bereaksi dengan baik. 47 00:03:05,670 --> 00:03:11,070 Kemudian jadwalkan semua panggilan fungsi ini dan menjamin Anda bahwa mereka dieksekusi dalam urutan 48 00:03:11,070 --> 00:03:17,160 yang benar sehingga bahkan jika pembaruan negara ditunda pada saat pembaruan mereka setelah dieksekusi, itu menjamin Anda 49 00:03:17,160 --> 00:03:18,900 yang pertama dieksekusi juga. 50 00:03:19,470 --> 00:03:25,080 Dan kemudian di sini Anda hanya akan Darfor untuk kembali kursus emas, yang masih belum menjadi tujuan 51 00:03:25,080 --> 00:03:25,440 baru. 52 00:03:25,890 --> 00:03:28,680 Ini akan menghasilkan hasil yang sama seperti sebelumnya di aplikasi ini. 53 00:03:28,920 --> 00:03:31,850 Dan dalam aplikasi sederhana ini, pendekatan ini akan baik-baik saja. 54 00:03:31,890 --> 00:03:39,270 Pada dasarnya tidak ada kesempatan untuk bereaksi, menunda pembaruan begitu lama sehingga kita akan berakhir dengan keadaan yang salah. 55 00:03:39,720 --> 00:03:43,050 Tapi ini adalah pendekatan anti peluru yang akan selalu berhasil. 56 00:03:43,410 --> 00:03:49,680 Anda hanya memerlukannya jika pembaruan negara bagian Anda bergantung pada data negara bagian sebelumnya, seperti yang dilakukan orang. 57 00:03:50,010 --> 00:03:55,860 Jika pembaruan status Anda adalah data baru, yang tidak bergantung pada status sebelumnya, Anda selalu dapat menggunakan 58 00:03:55,920 --> 00:03:58,380 formulir yang tidak berfungsi ini dengan aman. 59 00:03:59,160 --> 00:04:03,150 Dan inilah catatan tambahan, karena, tentu saja, semua mempersingkat mengambil keuntungan dari 60 00:04:03,150 --> 00:04:06,780 sintaks fungsi eral dan menyingkirkan pernyataan kembali di kurung kurawal. 61 00:04:07,050 --> 00:04:10,110 Karena kami hanya memiliki satu ekspresi yang segera kami kembalikan. 62 00:04:10,710 --> 00:04:15,690 Jadi sekarang dengan iklan itu, Brooks bertanya sebelumnya, tetapi ini sedikit pendekatan yang lebih aman dan dia merekomendasikan 63 00:04:15,690 --> 00:04:16,080 pendekatan. 64 00:04:16,110 --> 00:04:18,690 Jika pembaruan negara Anda tergantung pada keadaan sebelumnya.