WEBVTT

1
00:00.260 --> 00:03.920

ขั้นตอนที่สองคือการอ่านเอกสารทั้งหมดในคอลเล็กชัน

2
00:03.920 --> 00:06.140
มาสร้างเมธอดใหม่ที่นี่กันเถอะ

3
00:06.140 --> 00:14.720
ฉันจะตั้งชื่อว่า
"ดึงเอกสารทั้งหมดในคอลเลกชัน"
และฉันจะใช้การอ้างอิงคอลเลกชันตามด้วยจุด,
get ตามด้วยจุด,

4
00:14.750 --> 00:19.550
เพิ่มตัวฟัง Onsuccess
และส่งผ่านที่นี่ในอินเทอร์เฟซตัวฟัง
Success

5
00:19.550 --> 00:20.510
เราแทนที่มัน

6
00:20.510 --> 00:26.150
วิธีการนี้ใน Success Collection

7
00:26.150 --> 00:31.670
reference
แสดงถึงการอ้างอิงไปยังคอลเลกชันเฉพาะภายในฐานข้อมูล
Firestore

8
00:31.670 --> 00:33.050
ของคุณที่คุณต้องการดึงเอกสารออกมา
และในกรณีนี้เป็นการระบุถึงคอลเลกชันของผู้ใช้

9
00:33.050 --> 00:35.960
และถ้าคุณเลื่อนขึ้นไป คุณจะเห็นการอ้างอิง

10
00:35.960 --> 00:44.930
เมธอด Get

11
00:44.930 --> 00:45.650

ของผู้ใช้จะถูกเรียกใช้เมื่อเราต้องการดำเนินการอ่านและดึงเอกสารจากคอลเลกชันที่ระบุ

12
00:45.650 --> 00:51.800
คุณสามารถแนบและเพิ่มตัวฟังเหตุการณ์
Onsuccess
ให้กับผลลัพธ์ของเมธอดการดำเนินการ get ได้

13
00:51.800 --> 00:56.090

ผู้ฟังนี้จะถูกเรียกเมื่อการดึงข้อมูลสำเร็จ

14
00:56.090 --> 01:01.670
เอกสารคำค้นหา snapshots
ประกอบด้วยเอกสารในคอลเลกชัน

15
01:01.670 --> 01:07.580
ภายในเมธอด Onsuccess ของผู้ฟัง Onsuccess
คุณจะได้รับสแนปช็อตของคำค้นหา

16
01:07.610 --> 01:14.960

สแนปช็อตของคำค้นหาประกอบด้วยเอกสารที่ถูกดึงมาจากคอลเลกชัน
รวมถึงข้อมูลเมตาเกี่ยวกับคำค้นหาเอง

17
01:14.960 --> 01:23.090

และตามที่เรียนรู้มาก่อนหน้านี้ในส่วนก่อนหน้าของ
Firebase

18
01:23.090 --> 01:25.010
ฉันจำเป็นต้องค้นหาข้อมูลในสแนปช็อต

19
01:25.280 --> 01:32.180
เราจะใช้ for each loop
เพื่อวนซ้ำและทำซ้ำเอกสาร

20
01:32.180 --> 01:35.030
ดังนั้นคุณสามารถใช้ for loop
เพื่อทำซ้ำผ่านเอกสารการค้นหาได้

21
01:35.030 --> 01:38.840
วัตถุภาพรวมในเอกสารภาพรวมของการสืบค้น

22
01:38.870 --> 01:43.430

แต่ละสแนปช็อตของเอกสารคำค้นหาแทนเอกสารในคอลเลกชัน

23
01:43.430 --> 01:50.810
และคุณสามารถใช้วิธีการเช่น getString, get
Lang, และอื่น ๆ
เพื่อเข้าถึงข้อมูลภายในเอกสารแต่ละฉบับได้

24
01:50.810 --> 01:54.950

มาเริ่มดึงและวนดูเอกสารทั้งหมดในคอลเลกชันกันเถอะ

25
01:54.950 --> 02:03.470
ดังนั้นสำหรับสิ่งนั้น
ฉันจะใช้สำหรับสแนปช็อตเอกสารการค้นหา
สแนปช็อตในเอกสารการค้นหาสแนปช็อตที่นี่

26
02:03.470 --> 02:09.200

เอกสารสแนปช็อตของคำค้นหาแสดงถึงเอกสารในคอลเลกชัน
เอกสารสแนปช็อตของคำค้นหา

27
02:09.230 --> 02:13.580

ขั้นตอนที่สองคือการแปลงสแนปช็อตให้เป็นวัตถุ

28
02:13.580 --> 02:22.040

เราได้รับสแนปช็อตสำหรับทุกไอเท็มในเอกสารคำขอสแนปช็อต

29
02:22.040 --> 02:23.320

และเราต้องแปลงมันให้กลายเป็นออบเจ็กต์ประเภทเพื่อน

30
02:23.330 --> 02:29.720
ดังนั้น เพื่อนเพื่อนเท่ากับ snapshot dot
ไปยังเมธอดของวัตถุ

31
02:29.720 --> 02:33.680
และที่นี่ฉันจะระบุคลาสจุดเพื่อน

32
02:33.680 --> 02:41.330

และที่นี่ฉันกำลังบอกว่าสำหรับเอกสารทุกฉบับในสแนปช็อต

33
02:41.330 --> 02:41.810

ให้ไปแปลงเอกสารเหล่านั้นเป็นอ็อบเจ็กต์ประเภทเพื่อน

34
02:41.840 --> 02:50.120
ผมจะสร้างสตริงว่างไว้ภายนอกลูป for
นี้เพื่อแสดงผลในมุมมองข้อความ

35
02:50.120 --> 02:59.060
จากนั้นสำหรับเพื่อนแต่ละคน
ฉันจำเป็นต้องใช้สตริงข้อมูลนี้เท่ากับเป็นการเพิ่มชื่อและอีเมลเข้าไป

36
02:59.060 --> 03:10.490
ดังนั้น ชื่อเท่ากับเพื่อน จุด get
ชื่อบวกอีเมล, เพื่อน จุด get
อีเมลบวกบรรทัดใหม่.

37
03:10.490 --> 03:15.020

ฉันกำลังเพิ่มข้อมูลนี้ในสตริงข้อมูลนี้ทุกเอกสาร

38
03:15.020 --> 03:22.640
ไปและแปลงมันให้เป็นวัตถุ

39
03:22.640 --> 03:24.500

จากนั้นนำชื่อและอีเมลจากวัตถุนี้มาแสดงในบรรทัดเดียว

40
03:24.500 --> 03:31.760
จากนั้นฉันต้องตั้งค่า text view ให้เป็น
text view ที่ดึงข้อมูล แล้วตั้งค่า text
เป็นข้อมูล

41
03:31.790 --> 03:33.050
วิ่งกันเถอะ

42
03:33.050 --> 03:41.210
และทุกครั้งที่ฉันลืมเรียกสิ่งนี้ใน
listener ของปุ่มเซ็ต ให้อ่านปุ่มจุดเซ็ตใน
listener

43
03:41.210 --> 03:44.450
ของการคลิกใหม่ในมุมมองใหม่ และ listener
ของการคลิก แล้วเรียกเมธอดนี้อีกครั้ง

44
03:44.450 --> 03:44.900
วิ่ง

45
03:44.900 --> 03:49.220
คลิกที่ปุ่มอ่านข้อมูล
และขอแสดงความยินดีด้วยครับ!

46
03:49.220 --> 03:57.350

เราได้รับชื่อและอีเมลสำหรับทุกวัตถุและทุกเอกสารในไฟร์สโตร์แล้ว


