Angular 在角度模板中渲染可观察对象属性
我有以下7个角分量: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); } } 这允许我在加载时显示加载消息。您必须将异步管道用作: &
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>