RxJS - ภาพรวม
บทนี้เกี่ยวข้องกับข้อมูลเกี่ยวกับคุณสมบัติข้อดีและข้อเสียของ RxJS เราจะได้เรียนรู้ว่าเมื่อใดควรใช้ RxJS
รูปแบบเต็มของ RxJS คือ Reactive Extension for Javascript. เป็นไลบรารี javascript ที่ใช้ observables เพื่อทำงานกับโปรแกรมรีแอคทีฟที่เกี่ยวข้องกับการเรียกข้อมูลแบบอะซิงโครนัสการเรียกกลับและโปรแกรมตามเหตุการณ์ RxJS สามารถใช้ได้กับไลบรารีและเฟรมเวิร์ก Javascript อื่น ๆ ได้รับการสนับสนุนโดย javascript และ typescript
RxJS คืออะไร?
ตามเว็บไซต์อย่างเป็นทางการของRxJSถูกกำหนดให้เป็นไลบรารีสำหรับการเขียนโปรแกรมแบบอะซิงโครนัสและตามเหตุการณ์โดยใช้ลำดับที่สังเกตได้ มันมีประเภทหลักหนึ่งประเภทคือ Observable ประเภทดาวเทียม (Observer, Schedulers, Subjects) และตัวดำเนินการที่ได้รับแรงบันดาลใจจาก Array # extras (แผนที่, ตัวกรอง, ลด, ทุกๆ ฯลฯ ) เพื่อให้สามารถจัดการเหตุการณ์แบบอะซิงโครนัสเป็นคอลเล็กชันได้
คุณสมบัติของ RxJS
ใน RxJS แนวคิดต่อไปนี้ดูแลจัดการงาน async -
สังเกตได้
สังเกตได้คือฟังก์ชันที่สร้างผู้สังเกตการณ์และเชื่อมต่อกับแหล่งที่มาซึ่งคาดว่าจะมีค่าตัวอย่างเช่นการคลิกเหตุการณ์เมาส์จากองค์ประกอบ dom หรือคำขอ Http เป็นต้น
ผู้สังเกตการณ์
เป็นวัตถุที่มีเมธอด next (), error () และ complete () ซึ่งจะถูกเรียกเมื่อมีปฏิสัมพันธ์กับสิ่งที่สังเกตได้เช่นแหล่งที่มาโต้ตอบสำหรับการคลิกปุ่มตัวอย่างคำขอ Http เป็นต้น
การสมัครสมาชิก
เมื่อมีการสร้างสิ่งที่สังเกตได้ในการดำเนินการที่สังเกตได้เราจำเป็นต้องสมัครสมาชิก นอกจากนี้ยังสามารถใช้เพื่อยกเลิกการดำเนินการ
ตัวดำเนินการ
ตัวดำเนินการเป็นฟังก์ชันบริสุทธิ์ที่รับการสังเกตได้เป็นอินพุตและเอาต์พุตก็เป็นสิ่งที่สังเกตได้เช่นกัน
เรื่อง
วัตถุเป็นสิ่งที่สังเกตได้ซึ่งสามารถพูดคุยกับผู้สังเกตการณ์หลายคนได้หลายผู้รับ พิจารณาปุ่มที่มีตัวฟังเหตุการณ์ฟังก์ชั่นที่แนบมากับเหตุการณ์โดยใช้ addlistener จะถูกเรียกทุกครั้งที่ผู้ใช้คลิกที่ปุ่มฟังก์ชันการทำงานที่คล้ายกันจะใช้กับหัวเรื่องด้วย
ตัวจัดกำหนดการ
ตัวกำหนดตารางเวลาควบคุมการดำเนินการเมื่อการสมัครสมาชิกต้องเริ่มต้นและแจ้งเตือน
ควรใช้ RxJS เมื่อใด
หากโปรเจ็กต์ของคุณประกอบด้วยการจัดการงาน async มากกว่า RxJS เป็นทางเลือกที่ดี โดยค่าเริ่มต้นจะโหลดด้วยโครงการ Angular
ข้อดีของการใช้ RxJS
ต่อไปนี้เป็นข้อดีของการใช้ RxJS -
RxJS สามารถใช้ได้กับไลบรารีและเฟรมเวิร์ก Javascript อื่น ๆ ได้รับการสนับสนุนโดย javascript และ typescript ตัวอย่างบางส่วน ได้แก่ Angular, ReactJS, Vuejs, nodejs เป็นต้น
RxJS เป็นไลบรารีที่ยอดเยี่ยมเมื่อพูดถึงการจัดการงาน async RxJS ใช้สิ่งที่สังเกตได้เพื่อทำงานกับโปรแกรมรีแอคทีฟที่เกี่ยวข้องกับการเรียกข้อมูลแบบอะซิงโครนัสการเรียกกลับและโปรแกรมตามเหตุการณ์
RxJS นำเสนอชุดตัวดำเนินการจำนวนมากในทางคณิตศาสตร์การแปลงการกรองยูทิลิตี้เงื่อนไขการจัดการข้อผิดพลาดรวมหมวดหมู่ที่ทำให้ชีวิตง่ายขึ้นเมื่อใช้กับการเขียนโปรแกรมแบบรีแอคทีฟ
ข้อเสียของการใช้ RxJS
ต่อไปนี้เป็นข้อเสียของการใช้ RxJS -
การดีบักโค้ดด้วยสิ่งที่สังเกตได้นั้นยากเล็กน้อย
เมื่อคุณเริ่มใช้ Observables คุณสามารถวางโค้ดทั้งหมดไว้ใต้สิ่งที่สังเกตได้