1 00:00:02,640 --> 00:00:06,640 Ini menyimpulkan bagian resep favorit, sekarang saatnya untuk memastikan bahwa 2 00:00:06,690 --> 00:00:12,270 kami benar-benar menyaring resep kami karena perlu diingat pada layar kategori makanan, kami sebenarnya mengambil 3 00:00:12,330 --> 00:00:17,260 makanan yang difilter dari negara bagian kami dan sekarang tentu saja di negara 4 00:00:17,370 --> 00:00:24,870 bagian kami, yang memfilter properti properti selalu menampung semua makanan dan tidak pernah berubah dan itu adalah sesuatu yang ingin 5 00:00:24,870 --> 00:00:26,880 saya ubah sebagai langkah berikutnya. 6 00:00:29,310 --> 00:00:35,910 Sekali lagi, mari kita mulai dengan menambahkan tindakan yang sesuai yang dimulai dengan menambahkan pengidentifikasi yang 7 00:00:35,910 --> 00:00:43,830 saya ekspor di sini dan saya akan menamai set filter ini dan mengatur filter di sini sebagai teks juga dan 8 00:00:43,830 --> 00:00:47,150 membuat filter set fungsi pencipta action set pembuat 9 00:00:47,190 --> 00:00:53,550 tindakan dan di sini saya berharap untuk dapatkan argumen dengan pengaturan filter saya, yang seharusnya 10 00:00:53,580 --> 00:00:57,730 menjadi objek pada akhirnya dengan isGlutenFree, isLactoseFree, isVegan dan isVegetarian 11 00:00:57,730 --> 00:01:05,040 data di dalamnya dan saya akan mengembalikan objek tindakan di mana jenis kursus diatur filter, jadi pengidentifikasi ini 12 00:01:05,520 --> 00:01:12,000 dan kemudian filter, itu objek pengaturan filter saya, jadi objek ini dengan semua nilai benar atau 13 00:01:12,000 --> 00:01:15,030 salah untuk empat kriteria filter berbeda yang 14 00:01:15,030 --> 00:01:17,880 kita miliki. Itu pencipta aksi, 15 00:01:17,880 --> 00:01:24,900 sekarang apa yang harus kita lakukan di peredam? Dalam peredam, kita sekarang perlu menangani 16 00:01:24,900 --> 00:01:30,950 case baru itu, jadi di sini sebelum default, saya akan menambahkan case di 17 00:01:30,950 --> 00:01:38,900 mana saya menangani filter set dan untuk itu Anda perlu mengimpor pengidentifikasi filter set dari tindakan makanan 18 00:01:38,900 --> 00:01:47,580 dan dalam filter set, Tujuannya sekarang tentu saja adalah memperbarui makanan yang difilter untuk mencerminkan filter yang disiapkan. 19 00:01:47,590 --> 00:01:53,350 Sekarang perlu diingat bahwa ini sebenarnya mengandung kunci filter 20 00:01:53,350 --> 00:02:04,630 yang pada akhirnya akan menjadi objek Javascript yang memiliki sesuatu seperti glutenFree: true, lactoseFree: false dan kami ingin mencerminkan 21 00:02:04,630 --> 00:02:15,090 pengaturan ini dalam array makanan yang difilter kami. Jadi di sini, saya akan memiliki filter terapan saya katakanlah di mana saya cukup mengekstrak filter 22 00:02:15,090 --> 00:02:16,770 dari tindakan, itu tentu saja 23 00:02:16,830 --> 00:02:18,320 langkah Anda bisa tinggalkan, 24 00:02:18,320 --> 00:02:22,730 saya hanya mencoba untuk menulis kode yang dapat dimengerti yang berbicara untuk dirinya sendiri. 25 00:02:22,890 --> 00:02:27,990 Jadi saya hanya mengekstrak filter yang dibuat oleh pengguna dan kami 26 00:02:27,990 --> 00:02:29,190 akan berhati-hati mengirimkan 27 00:02:29,190 --> 00:02:40,740 tindakan ini nanti dan kemudian di sini, saya akan mengatur makanan yang difilter saya, membuat makanan yang difilter baru konstan berdasarkan total makanan saya, jadi tidak 28 00:02:40,740 --> 00:02:46,470 makanan yang difilter tetapi semua makanan yang tersedia dan di sana, saya ingin 29 00:02:46,470 --> 00:02:47,280 menyaringnya 30 00:02:47,280 --> 00:02:53,670 dengan metode filter bawaan yang ditawarkan Javascript. Filter selalu mengembalikan array baru yang bagus karena saya tidak ingin 31 00:02:53,880 --> 00:02:55,470 mengedit array yang ada 32 00:02:55,470 --> 00:03:02,370 dulu, saya ingin mendapatkan array baru dan itu akan menjadi array di mana ia menyimpan semua item yang fungsi ini kita lewati. filter 33 00:03:02,370 --> 00:03:08,850 mengembalikan true dan menjatuhkan semua item di mana kami mengembalikan false. Fungsi ini akan berjalan untuk setiap makan dan kemudian sekarang 34 00:03:08,850 --> 00:03:14,250 dalam fungsi ini, kita bisa melalui semua filter yang ditetapkan pengguna dan memeriksa apakah makan itu cocok 35 00:03:14,250 --> 00:03:20,100 dengan salah satu filter dan karena itu harus dijatuhkan atau jika ia melewati semua filter sehingga bisa dikatakan 36 00:03:20,100 --> 00:03:21,240 dan harus disimpan. 37 00:03:22,170 --> 00:03:29,460 Jadi di sini kita dapat memeriksa apakah filter. glutenFree dan saya hanya berharap bahwa filter saya, 38 00:03:29,460 --> 00:03:33,920 permisi menerapkan filter, bahwa objek ini saya dapatkan memiliki kunci bebas gluten. 39 00:03:34,290 --> 00:03:44,200 Jika itu benar dan makanan saya tidak bebas gluten dan karenanya saya perlu menambahkan tanda seru di sini, maka saya 40 00:03:44,200 --> 00:03:51,220 tahu bahwa makanan ini harus dijatuhkan, kan? Karena tidak bebas gluten tetapi saya memiliki 41 00:03:51,220 --> 00:03:57,250 filter yang seharusnya bebas gluten. Jadi saya akan mengembalikan false dan saya tidak 42 00:03:57,250 --> 00:03:58,540 peduli dengan filter 43 00:03:58,540 --> 00:04:06,220 lain karena sudah tidak cocok dengan filter ini, saya bisa menjatuhkannya. Jika kita berhasil melewati ini jika memeriksa, kita dapat memeriksa filter berikutnya, filter terapan 44 00:04:06,310 --> 00:04:07,150 laktosa gratis. 45 00:04:07,150 --> 00:04:11,820 Jika itu benar dan makanan saya tidak bebas laktosa, logika 46 00:04:11,830 --> 00:04:17,260 yang sama seperti sebelumnya dengan glutens, saya dapat mengembalikan false dan menjatuhkannya. 47 00:04:18,810 --> 00:04:29,370 Selanjutnya jika dicentang, jika filter diterapkan vegetarian diatur dan makanan saya bukan vegetarian, jadi logika yang sama seperti sebelumnya lagi, saya bisa menjatuhkannya karena saya mungkin telah 48 00:04:30,070 --> 00:04:34,930 melewati filter lain tetapi jika makanan itu bukan vegetarian tetapi saya mencari 49 00:04:34,930 --> 00:04:40,990 makanan vegetarian , maka saya harus menyingkirkannya. Dan yang tak kalah pentingnya, filter 50 00:04:40,990 --> 00:04:43,840 yang diterapkan. vegan. 51 00:04:43,930 --> 00:04:51,980 Jika saya mencari makanan vegan tetapi makanan saya bukan vegan di sini dan ngomong-ngomong, di sini saya hanya memanfaatkan semua sifat yang merupakan 52 00:04:52,220 --> 00:04:55,290 bagian dari makanan saya, jika kita melihat model 53 00:04:55,340 --> 00:05:01,550 kita, pada waktu makan, ada kami memiliki isGlutenFree, isVegan, dan sebagainya sebagai properti pada setiap kali makan, sehingga 54 00:05:01,640 --> 00:05:07,070 setiap kali makan memiliki informasi untuk filter mana yang harus dimasukkan atau dikecualikan, sehingga setiap 55 00:05:07,070 --> 00:05:07,690 makanan 56 00:05:07,700 --> 00:05:10,940 memiliki itu dan saya hanya menggunakan ini di peredam. 57 00:05:11,000 --> 00:05:18,170 Jadi karena itu di sini dalam kasus vegan, saya juga ingin mengembalikan false dan hanya jika saya berhasil melewati semua ini 58 00:05:18,230 --> 00:05:26,420 jika cek saya tahu saya memiliki makanan yang cocok dengan semua filter yang saya set dan di sana untuk saat ini, saya dapat mengembalikan true. 59 00:05:26,540 --> 00:05:30,830 Saya masih berada di dalam metode filter dan saya mengembalikan true yang berarti 60 00:05:30,830 --> 00:05:38,390 saya ingin menjaga makanan itu tetap konstan dalam makanan yang difilter, yang merupakan array baru saya dan sekarang secara keseluruhan setelah mendapatkan array makanan yang 61 00:05:38,810 --> 00:05:45,140 difilter ini, saya harus mengembalikan status baru dengan menyalin kondisi lama dan kemudian saya ingin mengganti makanan saya yang disaring di 62 00:05:45,140 --> 00:05:51,740 sini dengan makanan yang disaring yang saya dapatkan di sini. Jadi makanan yang disaring di sebelah kiri usus besar 63 00:05:51,740 --> 00:05:53,010 adalah properti 64 00:05:53,060 --> 00:05:59,540 di objek negara, jadi pada dasarnya properti ini dan makanan yang disaring di sisi kanan usus besar mengacu 65 00:05:59,540 --> 00:06:00,830 pada konstanta ini, saya 66 00:06:01,110 --> 00:06:06,890 juga dapat memberi nama makanan yang disaring yang diperbarui ini agar lebih jelas tentang hal ini. 67 00:06:06,940 --> 00:06:10,390 Ini adalah bagaimana negara saya diperbarui ketika filter diatur. 68 00:06:10,390 --> 00:06:13,570 Sekarang tentu saja, kita perlu memastikan bahwa kita juga mengirimkan tindakan ini pada akhirnya.