【发布时间】:2017-03-30 16:06:25
【问题描述】:
我试图弄清楚如何将 Observable 值传递给子组件:
服务:
public get percent():Observable<number> {
return this.percentSubject.asObservable();
}
子组件:
<ngb-progressbar type="success" [value]="completion.percent | async" [animated]="true">{{ completion.percent | async }}%</ngb-progressbar>
文本值按预期呈现。可悲的是,[value] 输入将可观察对象实例本身分配给进度条,而不是发出的值。由于我无法修改子组件 (ngb) - 有没有办法在不手动连接父组件中的 .subscribe() 处理程序的情况下公开派生值 ?
【问题讨论】:
-
async 将订阅它获取数据并取消订阅它我认为您应该直接发送 observable 作为输入并在组件内执行异步操作
-
你试过把表达式放在括号里吗?
[value]="(completion.percent | async)" -
@BabarBilal - 因为这是来自 ng-bootstrap.github.io 的组件 - 我在子组件内没有写入权限
-
{{ completion.percent | async }}是否呈现为预期百分比?
标签: angular typescript rxjs ng-bootstrap