मैं आरएक्सजेएस पुस्तकालय सीखने की कोशिश कर रहा हूं। जिन मामलों में मुझे काफी समझ नहीं आती है उनमें से एक को this jsfiddle (नीचे कोड भी) में वर्णित किया गया है।आरएक्सजेएस गठबंधन नवीनतम: केवल एक मूल्य परिवर्तन के बाद उत्सर्जन कैसे प्राप्त करें?
var A= new Rx.Subject();
var B= new Rx.Subject();
A.onNext(0);
// '.combineLatest' needs all the dependency Observables to get emitted, before its combined signal is emitted.
//
// How to have a combined signal emitted when any of the dependencies change (using earlier given values for the rest)?
//
A.combineLatest(B, function (a,b) { return a+b; })
.subscribe(function (v) { console.log("AB: "+ v); });
B.onNext("a");
A.onNext(1);
मैं "एबी" लॉगिंग में दो उत्सर्जन प्राप्त करना चाहता हूं। बी को "ए" में बदलने से एक (पहले से ही मान 0 है)। ए को बदलने के लिए एक और 1.
हालांकि, सब्सक्राइब के बाद होने वाले केवल परिवर्तन ही मायने रखते हैं (भले ही ए के पास मूल्य है और इस प्रकार संयुक्त परिणाम की गणना की जा सकती है)।
क्या मुझे इसके लिए "गर्म अवलोकन" का उपयोग करना चाहिए, या .combineLatest
से कुछ अन्य विधि का उपयोग करना चाहिए?
वास्तविक कोड (इस नमूने से बड़ा) में मेरी समस्या यह है कि मुझे सदस्यता के बाद अलग-अलग प्रारंभिकरण करने की आवश्यकता है, जो शुरुआती मूल्यों को स्पष्ट रूप से सामने रखने के बजाय दो अलग-अलग स्थानों में सामग्री को काटता है।
धन्यवाद
बहुत अच्छा जवाब पॉल, धन्यवाद! व्यवहार विषय वास्तव में मेरे लिए काम करता है, और मैं आपके द्वारा लिखे गए अंतिम पैराग्राफ का महत्व देता हूं। मुझे यकीन है कि आप सही हैं। मेरे मूल्य माउस ड्रैग से हैं; आरएक्स दस्तावेज के साथ इसे और अधिक समझने के लिए आगे बढ़ेगा। – akauppi
@akauppi yep mouse drags निश्चित रूप से देखने योग्य घटनाएं हैं, [fromEvent] (https://github.com/Reactive-Extensions/RxJS/blob/master/doc/api/core/operators/fromevent.md) देखें। जब आप अधिक आरएक्स अनुभव प्राप्त करते हैं, तो आप पूर्ण रूप से 'विषयों के साथ सीधे काम करने की आवश्यकता के बिना केवल आरएक्स ऑपरेटरों का उपयोग करके अपने अंतिम अवलोकन योग्य परिणाम के लिए अवलोकन करने योग्य माउस ईवेंट के स्रोत से सभी को एक साथ कैसे स्ट्रिंग करना सीख सकते हैं। '। – Brandon
@ ब्रैंडन मैं अभी आरएक्स सीख रहा हूं। :) आखिर में आरएक्सजे के साथ एसवीजी के संयोजन के साथ मेरा प्रयोग सार्वजनिक कर देगा (सोचने वाली वस्तुओं को एकसाथ सोचें)। – akauppi