这就是我想要做的。
@Component({
selector: "data",
template: "<h1>{{ getData() }}</h1>"
})
export class DataComponent{
this.http.get(path).subscribe({
res => return res;
})
}
If getData
was called inside the DataComponent
, You may suggest assign it to a variable like this.data = res
and use i like {{data}}
I需要像 {{getData}}
用于我自己的目的。请建议我?
原文由 tsadkan yitbarek 发布,翻译遵循 CC BY-SA 4.0 许可协议
您不能直接返回该值,因为它是一个异步调用。异步调用意味着它在后台运行(实际上已安排为稍后执行),而您的代码继续执行。
您也不能直接在类中有这样的代码。它需要移动到方法或构造函数中。
您可以做的不是直接
subscribe()
而是使用像map()
这样的运算符此外,您可以将多个
.map
与相同的 Observable 组合起来,因为有时这可以提高代码清晰度并保持独立。例子:这样,调用者可以订阅的 observable 将返回
调用者也可以在另一个类中。这里只是为了简洁。
和
是箭头函数。它们类似于正常功能。这些函数被传递给
subscribe(...)
或map(...)
以便在数据从响应中到达时从 observable 中调用。这就是为什么不能直接返回数据的原因,因为当someMethod()
完成时,还没有收到数据。