यह मेरा कोड है
let x = Rx.Observable.create(obs => window.obs = obs);
y = x.map(x=>x+2);
x.subscribe(v=>console.log("x got ",v));
y.subscribe(v=>console.log("y got ",v));
obs.next(1);
आउटपुट है
y got 3
मैं आउटपुट होने की उम्मीद कर रहा था
x got 1
y got 3
मुझे यहां क्या समझ नहीं आ रहा है? धन्यवाद
उत्तर:
जवाब के लिए 2 № 1आप ओवरराइट कर रहे हैं window.obs
दूसरी सदस्यता पर।
यदि आपका usecase आपको प्रक्रियात्मक रूप से उत्सर्जन को लागू करने की आवश्यकता है तो आप स्वयं एक अवलोकन बनाने के बजाय एक विषय का उपयोग कर सकते हैं:
const subj = new Rx.Subject();
const sub1 = subj.subscribe(x => console.log("x got: " + x));
const sub2 = subj.map(v => v * 2).subscribe(y => console.log("y got: " + y));
subj.next(2);
<script src="https://cdnjs.cloudflare.com/ajax/libs/rxjs/5.1.0/Rx.js"></script>