1 00:00:02,200 --> 00:00:07,590 Kami menambahkan token di mana-mana yang penting tetapi untuk pesanan, kami tidak hanya ingin menambahkan token, 2 00:00:07,600 --> 00:00:11,800 kami juga ingin memastikan bahwa pesanan benar-benar milik pengguna yang masuk. 3 00:00:11,800 --> 00:00:17,080 Sekarang hal baiknya adalah kami menyimpan userId yang dihasilkan Firebase di toko Redux kami. 4 00:00:17,080 --> 00:00:21,480 Jadi memetakan pesanan kami kepada pengguna tidak terlalu sulit, kami mendapatkan akses ke toko lengkap kami di 5 00:00:21,520 --> 00:00:29,140 sini, sehingga kami bisa mendapatkan userId dengan memanggil getState. auth. userId, itu saja, ini 6 00:00:29,140 --> 00:00:33,270 memberi kita userId dari pengguna yang saat ini masuk 7 00:00:33,340 --> 00:00:40,030 dan sekarang kita bisa menyuntikkan ini di sini dan mengganti U1 hardcoded dengan userId. 8 00:00:40,030 --> 00:00:46,840 Tentu saja tidak hanya untuk menambah pesanan tetapi juga untuk mengambil pesanan karena kami ingin mengambil pesanan dari 9 00:00:46,900 --> 00:00:49,060 pengguna yang saat ini masuk. 10 00:00:49,060 --> 00:00:55,540 Jadi di sini, mari kita juga menerima argumen kedua itu, dapatkan userId kami dan di sini bertukar 11 00:00:55,540 --> 00:01:03,640 tanda kutip tunggal untuk kutu kembali sehingga kami dapat menggunakan injeksi nyaman dinamis ini di sini dan kemudian ganti atau interpolasi seperti 12 00:01:03,640 --> 00:01:10,940 yang disebut string ini di sini dengan menambahkan userId. Jadi ini sekarang juga memastikan bahwa pesanan disimpan dengan benar tetapi 13 00:01:10,940 --> 00:01:11,880 tentu saja 14 00:01:11,900 --> 00:01:18,160 bukan hanya pesanan, produk juga harus disimpan seperti itu. Kita harus memastikan bahwa ketika kita membuat produk, 15 00:01:18,160 --> 00:01:23,000 kita benar-benar menambahkan ID pemilik kita untuk itu, itu adalah sesuatu yang saat ini 16 00:01:23,020 --> 00:01:26,960 tidak kita lakukan dan itu adalah sesuatu yang harus kita lakukan. 17 00:01:27,100 --> 00:01:33,200 Jadi di sini, saya sebenarnya juga ingin mendapatkan userId di sini dalam membuat produk dan ketika saya 18 00:01:33,370 --> 00:01:39,380 kemudian mengirim permintaan saya untuk membuat produk baru, saya tidak hanya ingin menetapkan judul, deskripsi dan sebagainya, 19 00:01:39,400 --> 00:01:39,920 saya 20 00:01:39,970 --> 00:01:48,130 juga ingin mengatur pemilik Bidang ID dan nama yang tepat terserah Anda, yang sama dengan userId dari pengguna yang masuk dan itu sekarang 21 00:01:48,130 --> 00:01:49,720 sesuatu yang baru, sekarang 22 00:01:49,720 --> 00:01:51,610 kami benar-benar mulai memetakan produk 23 00:01:51,610 --> 00:01:59,560 ke pengguna, sesuatu yang hanya kami lakukan dengan cara dummy sebelumnya. Ini juga berarti dengan cara bahwa ketika kami mengirim membuat 24 00:01:59,560 --> 00:02:05,980 produk di sini, saya ingin memberikan informasi baru, saya ingin menambahkan ID pemilik di sana juga dan 25 00:02:06,490 --> 00:02:11,520 juga menunjuk pada userId di sini dan itu berarti bahwa dalam peredam produk, kita 26 00:02:11,890 --> 00:02:16,310 perlu menghargai ini dan di sana, alih-alih membuat hardcoding ID ini di 27 00:02:16,540 --> 00:02:24,130 sini, kita sekarang bisa mendapatkan ini dari tindakan kita. productData, dari ID pemilik di sana karena itulah 28 00:02:24,580 --> 00:02:28,200 yang baru saja saya tambahkan di sana. 29 00:02:28,210 --> 00:02:33,990 Jadi di sini produk, saya menambahkan ID pemilik, saya menambahkan kunci ini ke data produk, ke tindakan yang 30 00:02:34,090 --> 00:02:39,910 saya kirim, sekarang di peredam, kita harus menggunakannya, ekstrak di sini dan menggunakannya sebagai ID pemilik produk yang 31 00:02:39,910 --> 00:02:42,230 kami buat secara lokal di Redux. 32 00:02:42,340 --> 00:02:49,780 Tentu saja ini juga berarti bahwa di sini, ketika saya mendapatkan produk milik pengguna itu, saya juga ingin memastikan bahwa 33 00:02:49,780 --> 00:02:53,190 saya memfilter dengan benar untuk ID yang benar. 34 00:02:53,800 --> 00:02:58,960 Jadi ketika kita memanggil set produk di sini, saya ingin memastikan bahwa produk 35 00:02:58,960 --> 00:03:07,540 pengguna benar-benar difilter ke pengguna yang masuk, jadi di pembuat tindakan produk, ketika kami mengambil semua produk, di sini tentu saja saya ingin 36 00:03:07,540 --> 00:03:16,190 mengambil semua produk tetapi di sana, saya juga ingin bisa mendapatkan negara saya sehingga saya bisa mendapatkan userId saya dari negara karena kemudian 37 00:03:16,400 --> 00:03:21,920 di sini ketika kita membuat produk yang dimuat, saya tidak hanya ingin meneruskan itu, 38 00:03:21,950 --> 00:03:28,350 saya juga ingin menambahkan pengguna baru kunci produk untuk objek tindakan saya di mana saya mengambil produk 39 00:03:28,400 --> 00:03:37,590 yang dimuat dan di sini saya menyaringnya dan saya melihat setiap produk dan jika ID pemilik produk, jika itu sama dengan userId, maka saya ingin 40 00:03:37,650 --> 00:03:43,590 menyimpannya karena itu itu adalah produk yang dibuat oleh pengguna yang saat ini masuk, jika 41 00:03:43,590 --> 00:03:44,290 tidak 42 00:03:44,340 --> 00:03:45,840 saya tidak akan menyimpannya. 43 00:03:45,840 --> 00:03:51,040 Ini masih merupakan bagian dari produk yang dimuat yang saya berikan ke produk tetapi bukan bagian dari produk yang 44 00:03:51,040 --> 00:03:52,510 saya berikan ke produk 45 00:03:52,860 --> 00:03:58,170 pengguna dan yang memungkinkan saya untuk kembali ke peredam dan di sana dalam produk yang ditetapkan, produk pengguna diinisialisasi 46 00:03:58,200 --> 00:04:04,860 bukan dengan menyaring di sini tetapi dengan menetapkan itu sama dengan produk tindakan pengguna yang sekarang mengambil produk yang difilter yang disaring dalam pembuat 47 00:04:05,160 --> 00:04:12,290 tindakan dengan logika yang baru saja kita tulis di mana kita mengambil userId. Ini memastikan bahwa kami hanya melihat produk 48 00:04:12,560 --> 00:04:18,260 yang benar-benar kami buat dan kami tidak melihat produk dari pengguna lain. 49 00:04:18,270 --> 00:04:25,310 Sekarang tentu saja, sekarang kita juga dapat memastikan bahwa di toko produk kita di sini, kita tidak 50 00:04:25,310 --> 00:04:28,460 memulai dengan produk tiruan kita tetapi kita 51 00:04:28,460 --> 00:04:37,440 benar-benar mulai dengan array kosong dalam kedua kasus di sini. Ini juga berarti bahwa sekarang jika kita menyimpan ini dan kita 52 00:04:37,440 --> 00:04:41,230 masuk, kita harus dapat melihat produk kita sebelumnya, ini 53 00:04:41,310 --> 00:04:42,020 dia 54 00:04:42,030 --> 00:04:45,010 tetapi jika saya pergi ke admin, 55 00:04:45,090 --> 00:04:50,340 kita tidak melihatnya di sana dan itu masuk akal karena produk ini dibuat 56 00:04:50,340 --> 00:04:58,650 sebelumnya dalam kursus dan karenanya tidak memiliki ID pemilik. Produk ini tidak memiliki ID pemilik, jadi karena itu tidak termasuk dalam produk pengguna mana pun 57 00:04:58,650 --> 00:05:01,980 yang hebat karena sekarang saya punya contoh yang bagus bahwa belum ada produk, 58 00:05:02,010 --> 00:05:04,190 mungkin kita juga harus menampilkan pesan di sini. 59 00:05:04,320 --> 00:05:07,050 Sebagai catatan tambahan dalam pesanan, kami juga tidak melihat 60 00:05:07,050 --> 00:05:12,720 apa pun dan mungkin kami juga harus menampilkan pesan di sini karena pesanan untuk U1, yang sekarang bukan lagi 61 00:05:12,720 --> 00:05:13,450 ID pengguna 62 00:05:13,470 --> 00:05:18,680 yang valid, jadi pesanan ini tidak pernah dimuat untuk pengguna mana pun dan itu bagus karena begitulah seharusnya. 63 00:05:18,680 --> 00:05:23,840 Jadi sekarang dengan itu, saya hanya akan men-tweak halaman-halaman ini sedikit untuk menampilkan pesan jika kita tidak dapat memuat data apa pun. 64 00:05:23,870 --> 00:05:32,620 Jadi di sini di layar produk pengguna, jika panjang produk pengguna sama dengan nol, maka saya tidak ingin mengembalikan daftar datar saya, tetapi sebaliknya saya 65 00:05:32,620 --> 00:05:41,090 akan mengembalikan tampilan di sini di mana saya memiliki teks di mana saya mengatakan tidak ada produk yang ditemukan, mungkin mulai membuat beberapa dan 66 00:05:41,110 --> 00:05:46,810 kita perlu menyiapkan beberapa gaya di sana, kita juga perlu mengimpor tampilan dan teks jika tidak 67 00:05:46,820 --> 00:05:49,520 kita tidak dapat menampilkan ini dan sekarang 68 00:05:49,520 --> 00:05:51,460 saya hanya akan melakukan 69 00:05:51,680 --> 00:05:59,060 beberapa styling inline cepat dan kotor di sini dengan satu fleksibel, justify pusat konten dan menyelaraskan pusat item, tentu saja Anda 70 00:05:59,090 --> 00:06:04,340 juga dapat menetapkan font Anda sendiri di sini untuk teks dan sebagainya, saya akan melakukannya 71 00:06:04,340 --> 00:06:09,070 seperti ini dan kemudian menyalin ini dan memindahkannya ke layar pesanan, pastikan Anda 72 00:06:09,170 --> 00:06:12,060 melihat inport dan teks di sana juga dan 73 00:06:12,110 --> 00:06:18,350 kemudian di sini kita juga dapat menambahkan cek ini, jika panjang produk pengguna kosong, tentu saja di sini 74 00:06:18,410 --> 00:06:24,010 kita harus memeriksa panjang pesanan, bukan panjang produk pengguna tetapi jika itu kosong, saya katakan tidak 75 00:06:24,110 --> 00:06:28,910 ada pesanan ditemukan, mungkin mulai memesan beberapa produk seperti itu dan dengan itu, kita 76 00:06:28,910 --> 00:06:31,940 harus melihat teks itu jika tidak ada yang ditemukan. 77 00:06:31,940 --> 00:06:41,090 Jadi jika saya mencoba ini lagi dan masuk dengan cepat dan kami pergi ke halaman admin, kami melihat teks di sini dan jika kami pergi 78 00:06:41,160 --> 00:06:42,630 ke halaman pesanan, 79 00:06:42,630 --> 00:06:44,540 kami juga melihat teks di sini. 80 00:06:44,640 --> 00:06:46,460 Jadi sekarang ini berfungsi sebagaimana mestinya. 81 00:06:46,620 --> 00:06:55,470 Jika saya sekarang membuat produk baru di sisi lain, misalnya syal katakanlah dengan URL kecil yang bagus 82 00:06:55,470 --> 00:07:03,190 yang saya pilih seharga $ 55. 99, syal wol, jika saya melakukan itu dan mengirimkan ini, 83 00:07:03,210 --> 00:07:12,060 ini berfungsi dengan baik dan juga muncul di sini di bawah admin, juga muncul di bawah produk, kami tentu saja juga bisa menyaringnya di 84 00:07:12,060 --> 00:07:16,650 luar sana jika Anda ingin tetapi mengapa tidak, mengapa tidakkah kita memilikinya 85 00:07:16,650 --> 00:07:18,290 di sini juga dan 86 00:07:18,380 --> 00:07:26,840 jika saya menambahkan ini ke keranjang dan saya mengklik pesanan sekarang, sekarang di sini di bawah pesanan, kita melihatnya dan di Firebase, kita 87 00:07:26,840 --> 00:07:32,460 juga melihat bahwa di bawah pesanan sekarang kita memiliki simpul dengan userId dengan kita pesanan. 88 00:07:32,490 --> 00:07:35,670 Jadi ini sekarang benar-benar bekerja dengan cara yang seharusnya di sini pada 89 00:07:35,670 --> 00:07:39,960 aplikasi ini dan oleh karena itu sekarang di sini, kita memiliki pengaturan yang dengannya kita dapat bekerja.