मेरे पास ऑब्जेक्ट्स की स्ट्रीम है और मुझे तुलना करने की आवश्यकता है कि वर्तमान ऑब्जेक्ट पिछले जैसा नहीं है और इस मामले में नया मान उत्सर्जित करता है। मैंने पाया कि अलग-अलग चेंज ऑपरेटर को वही करना चाहिए जो मैं चाहता हूं, लेकिन किसी कारण से, यह पहले को छोड़कर मूल्य को कभी भी उत्सर्जित नहीं करता है। यदि मैं अलग-अलग हटाता हूं तो चयनित मान सामान्य रूप से उत्सर्जित होते हैं।RxJS specificUntilChanged - ऑब्जेक्ट कंपर्सन
मेरे कोड:
export class SettingsPage {
static get parameters() {
return [[NavController], [UserProvider]];
}
constructor(nav, user) {
this.nav = nav;
this._user = user;
this.typeChangeStream = new Subject();
this.notifications = {};
}
ngOnInit() {
this.typeChangeStream
.map(x => {console.log('value on way to distinct', x); return x;})
.distinctUntilChanged(x => JSON.stringify(x))
.subscribe(settings => {
console.log('typeChangeStream', settings);
this._user.setNotificationSettings(settings);
});
}
toggleType() {
this.typeChangeStream.next({
"sound": true,
"vibrate": false,
"badge": false,
"types": {
"newDeals": true,
"nearDeals": true,
"tematicDeals": false,
"infoWarnings": false,
"expireDeals": true
}
});
}
emitDifferent() {
this.typeChangeStream.next({
"sound": false,
"vibrate": false,
"badge": false,
"types": {
"newDeals": false,
"nearDeals": false,
"tematicDeals": false,
"infoWarnings": false,
"expireDeals": false
}
});
}
}
'टाइप चेंजस्ट्रीम' एक अवलोकन योग्य है? यह बताए बिना क्या गलत है कि कोड कौन सा कोड बना रहा है/आदि –
कृपया 'यह काम नहीं करता' प्रश्नों से निपटने के लिए दिशानिर्देशों के लिए http://stackoverflow.com/help/mcve पर एक नज़र डालें। असल में एक न्यूनतम सत्यापन योग्य उदाहरण पोस्ट करें जो त्रुटि को पुन: उत्पन्न करता है, और अपेक्षित व्यवहार पोस्ट करता है और यह वर्तमान व्यवहार से अलग कैसे है। जेएसओएन स्ट्रिंग के बारे में बात करें, आपको यह जानने की जरूरत है कि यह वस्तुओं की समानता की जांच के लिए बुलेट प्रूफ विधि नहीं है। {"ए": 2, "बी": 1} उदाहरण के लिए {"बी": 1, "ए": 2} से अलग है, जबकि ये वही ऑब्जेक्ट्स – user3743222
इसके लिए खेद है, मैंने और कोड जोड़ा। मुझे बुलेट प्रूफ ऑब्जेक्ट समानता जांच की आवश्यकता नहीं है, मुझे यकीन है कि इस मामले में ऑब्जेक्ट हर बार एक ही ऑर्डर होगा। –