rxjs / Subscription另一个订阅的未定义值

时间:2017-08-20 04:01:46

标签: rxjs

我需要将另一个订阅的值用于订阅。这是代码。产品价值未定义,访问该值的最佳方法是什么?

代码:

@Component({
    selector: 'product-page',
    templateUrl: 'product-page.html'
})
export class ProductPage {
    private product: Product;
    this.store.select('products').subscribe(({
        product
    }) => {
        if (product) {
            this.product = product;
        }
    });
    this.store.select('plc').subscribe((value: any) = > {
        console.log(this.product); // undefined
    })
}

1 个答案:

答案 0 :(得分:0)

您可以使用combineLatest operator

组合两个选项
import 'rxjs/add/operator/combineLatest';
// ...

this.store
  .select('products')
  .combineLatest(this.store.select('plc'))
  .subscribe(([products, plc]) => {
    // ...
  });