那么可以订阅多个json变量吗?
this.http.get(this.api_url + "preference")
.map(response => response.json())
.subscribe(res => this.limit = res.limit, res => this.sources = res.sources);
在此示例中,sources是一个字符串数组。 如果你这样做,只会设置限制。
我的json:
{ "sources":["examplePage"],
"limit":5
}
答案 0 :(得分:2)
您可以使用大括号{}
在订阅正文中执行多项操作来定义函数体,然后像这样分配两个变量:
this.http.get(this.api_url + "preference")
.map(response => response.json())
.subscribe(res => {
this.limit = res.limit;
this.sources = res.sources;
});
另外,在您的问题中写入订阅的方式,当http请求成功时将设置limit
,并且在请求失败时设置源。 subscribe(/* success */, /* error */, /* finished */)