21
วิธีที่ถูกต้องในการแบ่งปันผลของการโทรเครือข่าย Angular Http ใน RxJs 5 คืออะไร?
โดยการใช้ Http เราจะเรียกวิธีที่ใช้ในการโทรผ่านเครือข่ายและส่งกลับ http ที่สังเกตได้: getCustomer() { return this.http.get('/someUrl').map(res => res.json()); } หากเราใช้สิ่งนี้สามารถสังเกตได้และเพิ่มสมาชิกหลายคน: let network$ = getCustomer(); let subscriber1 = network$.subscribe(...); let subscriber2 = network$.subscribe(...); สิ่งที่เราต้องการจะทำคือมั่นใจได้ว่านี่จะไม่ทำให้เกิดคำขอเครือข่ายหลาย สิ่งนี้อาจดูเหมือนเป็นสถานการณ์ที่ผิดปกติ แต่จริง ๆ แล้วเป็นเรื่องธรรมดา: ตัวอย่างเช่นหากผู้โทรสมัครรับข้อมูลที่สังเกตได้เพื่อแสดงข้อความแสดงข้อผิดพลาดและส่งผ่านไปยังเทมเพลตโดยใช้ async pipe เรามีสมาชิกสองคนแล้ว วิธีที่ถูกต้องในการทำเช่นนั้นใน RxJs 5 คืออะไร? คือนี่ดูเหมือนจะทำงานได้ดี: getCustomer() { return this.http.get('/someUrl').map(res => res.json()).share(); } แต่นี่เป็นวิธีที่ใช้ในการทำสิ่งนี้ใน RxJs 5 หรือว่าเราควรทำอย่างอื่นแทน? …