如何从当前产品服务中获取产品代码
how to get Product Code from current product service
我是 spratacus 的新手,我想获取类型脚本中的产品代码。
产品$:可观察的= this.currentProductService.getProduct();
如何获得产品代码?请帮忙
您的问题可以改写得更具体:
如何从Angular中的RxJs
数据流中获取值?
答案:
这取决于您要访问值的位置:
a) 最有可能:您想在组件的 HTML 模板中获取它。然后使用 Angular 的 async
管道:
<ng-container *ngIf="product$ | async as product">
<!-- use `product` variable here -->
</ng-container>
b) 或在您的 Typescript class(组件或服务)中。然后你可以订阅 observable 来获取值。也就是说,这不是推荐的方法,因为那样的话您需要手动处理订阅 以避免内存泄漏 !
ngOnInit() {
this.sub = this.product$.subscribe(product => {
// use `product` variable here
})
}
/*...*/
ngOnDestroy() {
this.sub?.unsubscribe();
}
参考文献
- RxJs Observables 在管理基于异步推送的数据流方面非常强大。 Angular 团队决定 RxJs 成为第一个 class 公民。 Spartacus 还推荐使用 RxJs Observables 和反应式方法。在这里阅读更多:https://angular.io/guide/observables .
- 也就是说,如果您想尽可能避免观察,您可能会对这篇文章感兴趣https://dev.to/angular/how-to-avoid-observables-in-angular-273h
我是 spratacus 的新手,我想获取类型脚本中的产品代码。 产品$:可观察的= this.currentProductService.getProduct(); 如何获得产品代码?请帮忙
您的问题可以改写得更具体:
如何从Angular中的RxJs
数据流中获取值?
答案:
这取决于您要访问值的位置:
a) 最有可能:您想在组件的 HTML 模板中获取它。然后使用 Angular 的 async
管道:
<ng-container *ngIf="product$ | async as product">
<!-- use `product` variable here -->
</ng-container>
b) 或在您的 Typescript class(组件或服务)中。然后你可以订阅 observable 来获取值。也就是说,这不是推荐的方法,因为那样的话您需要手动处理订阅 以避免内存泄漏 !
ngOnInit() {
this.sub = this.product$.subscribe(product => {
// use `product` variable here
})
}
/*...*/
ngOnDestroy() {
this.sub?.unsubscribe();
}
参考文献
- RxJs Observables 在管理基于异步推送的数据流方面非常强大。 Angular 团队决定 RxJs 成为第一个 class 公民。 Spartacus 还推荐使用 RxJs Observables 和反应式方法。在这里阅读更多:https://angular.io/guide/observables .
- 也就是说,如果您想尽可能避免观察,您可能会对这篇文章感兴趣https://dev.to/angular/how-to-avoid-observables-in-angular-273h