【发布时间】:2017-09-04 12:49:42
【问题描述】:
我的angular 组件中有一个接收可观察对象的函数。我需要修改可观察对象内的对象,然后再次将其“放回”可观察对象并返回。到目前为止,这是我的代码:
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));
}
现在它完全跳过了地图功能。 'before' 和 'after' 日志显示相同的数组,而 'inside log' 不显示。
【问题讨论】:
-
您是要更改整个对象还是仅根据某些条件修改数组的值?
-
只有数组的值,就像我在 subscribe() 调用中所做的那样。我需要返回一个包含修改后的数组的 Observable。
-
使用'map'操作符来改变值。
标签: angular typescript observable