为什么在http.get之后未定义Angular组件属性

时间:2018-02-14 17:05:56

标签: angular

为什么 http.get 之后的构造函数中的“this.Trails”未定义

http.get 是成功的,但“ this.Trails ”一直是未定义。不过,在我的页面中,我能够输出项目。我不明白这一点。

dst_ap

1 个答案:

答案 0 :(得分:2)

Http.get()是一个异步调用,将在下一个tick(在解析或拒绝之后)处理

if (this.Trails != undefined) {
   console.log("has items");
}

上述代码在订阅之前执行

this.Trails = result.json();

因此不受欢迎