Angular 在角度模板中渲染可观察对象属性

Angular 在角度模板中渲染可观察对象属性,angular,angular7,angular-observable,Angular,Angular7,Angular Observable,我有以下7个角分量: export class PostComponent implements OnInit { post$: Observable<PostModel>; constructor(private postService: PostService) { } ngOnInit() { this.post$ = postService.getPostById(25); } } 这允许我在加载时显示加载消息。您必须将异步管道用作: &

我有以下7个角分量:

export class PostComponent implements OnInit {

  post$: Observable<PostModel>;

  constructor(private postService: PostService) { }

  ngOnInit() {

    this.post$ = postService.getPostById(25);

  }

}

这允许我在加载时显示加载消息。

您必须将异步管道用作:

<p>Title: {{(post$ | async).title}}</p>
标题:{{(post$| async.Title}


那么,您使用
用户$
(和
帖子$
)做的事情与使用
帖子$
做的事情有什么区别?这应该给你一个线索。这已在中介绍。显然,您应该使用。请注意,您使用的每个
async
订阅您的可观察对象,因此,如果您的可观察对象来自
HttpClient
,则将为每个新订阅发出新的http请求(在模板中使用
async
。@fridoo为了防止新的http请求,我可以使用包装器,不是吗?类似于:。否?@MiguelMoura是的,可以。如果我有一个双向绑定,比如
[(ngModel)]
<div *ngIf="(posts$ | async)?.length > 0; else loading">
  <ng-container *ngFor="let post of posts$ | async">
    {{post.title}}
  </ng-container>
</div>
<ng-template #loading>
  Loading ...
</ng-template>
<p>Title: {{(post$ | async).title}}</p>