我知道还有其他帖子,但这些答案只是没有点击我,而且文档也不是很遗憾。我真的很难使用observable并订阅它们。我想要的是在一个组件中更新和数组,并在另一个组件中显示,而不是父组件或子组件。如果有人能够用最简单的方式将其分解,那么谢谢你。
答案 0 :(得分:0)
您需要有一个可以在两个组件中注入的公共服务。该服务需要有2个方法来返回数组,另一个方法来更新数组。
服务的示例语法:
getComments() : Observable<Comment[]> {
return this.http.get(this.commentsUrl)
// ...and calling .json() on the response to return data
.map((res:Response) => res.json())
//...errors if any
.catch((error:any) => Observable.throw(error.json().error || 'Server error'));
}
组件的示例语法:
loadComments() {
// Get all comments
this.commentService.getComments()
.subscribe(
comments => this.comments = comments, //Bind to view
err => {
// Log errors if any
console.log(err);
});
}