【问题标题】:How to get a value from Observable [duplicate]如何从 Observable 中获取值 [重复]
【发布时间】:2019-02-17 12:03:05
【问题描述】:

当调用返回的服务时,我有一个返回 true 或 false 值的服务数据的 Observable

 let m =this.myService.checkCapabilityOf(constantvalue);
console.log(m);

以下格式

在可观察值中它返回 false, 我需要获得价值 所以我订阅了 observable。

let m =this.myService.checkCapabilityOf(constantvalue).subscribe(value => value);
console.log(m);

但它返回以下格式,如何从 observable 获取值

【问题讨论】:

  • 你把对值的访问放在回调中,在那里你有它。
  • @johnSharp 为什么订阅后它没有显示在范围变量中
  • 你是什么意思“在范围变量中”?我强烈建议您阅读异步的基础知识。

标签: angular rxjs angular6 rxjs6


【解决方案1】:

使用以下代码从 Observable subscribe 中获取值。

let m;
this.myService.checkCapabilityOf(constantvalue).subscribe(value =>{ 
 m = value
 console.log(value);

});

请记住,这是一个异步调用,那么您无法从订阅的外部站点获取值。您可以保存引用或获取对象的副本,但直到订阅响应您将获得值。

【讨论】:

    猜你喜欢
    • 2020-12-19
    • 1970-01-01
    • 1970-01-01
    • 2014-05-01
    • 2016-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多