我的angular
组件中有一个函数可以接收一个observable。我需要修改observable中的对象然后再将其“放回”observable中并返回它。到目前为止,这是我的代码:
myImmobili = Observable<Valutazione[]>;
newImmobile(immobili: Observable<Valutazione[]>) {
immobili.subscribe(
imm => {
console.log(imm);
imm.push(new Valutazione());
console.log(imm);
this.myImmobili = //some code here
}
);
}
任何人都可以给我一个提示吗?也许有更好的方法来修改我的数组而不订阅它,但我找不到它。感谢。
修改
newImmobile() {
this.immobili.subscribe(i => console.log('before', i));
this.immobili.map(imm => {
imm.push(new Valutazione());
console.log('inside', imm);
}
);
this.immobili.subscribe(i => console.log('after', i));
}
现在它完全跳过了地图功能。 “之前”和“之后”的日志显示相同的数组,并且“内部日志”不显示。
答案 0 :(得分:1)
您可以使用map:
而不是订阅immobili.map(
imm => {
console.log(imm);
imm.push(new Valutazione());
console.log(imm);
this.myImmobili = //some code here
}
);