我在地图上使用from
有一个简单的RxJS observable:
在订阅observable后,当我为地图设置新的键/值时,没有console.logs
。当数据映射发生变化时,如何让observable更新,以便观察者将console.log更改?
我在这里遗漏了什么吗?我已经尝试过阅读文档和观看视频,但还没有找到有关如何实现这一目标的任何数据。感谢
const data = new Map([['item1', value1], ['item2', 'value2'], ['item3', value3]]);
const data$ = Rx.Observable.from(data);
data$.subscribe(
(x) => {
console.log('OBSERVABLE X');
console.log(x);
},
(err) => {
console.log('OBSERVABLE ERR');
console.log(err);
},
(complete) => {
console.log('OBSERVABLE COMPLETE');
console.log(complete);
},
);
data.set('item3', 'value3');
答案 0 :(得分:1)
你的观察结果是冷的,你需要热销才能达到你想要的功能。
Hot observable通常是主题,您需要将其转换为主题,然后尝试在地图中添加另一个值并查看,理想情况下应该可以使用。
const subject = new Subject();
data$.subscribe(subject)