首页 > 解决方案 > 如何从解析器订阅查询参数

问题描述

这是我的 ngOnInit(我从解析器获取数据)-

ngOnInit() {
    const products = this.route.snapshot.data['users'] as IProductInterface[];
    this._products = products.map((product) => new Product(product));
  }

我的吸气剂-

public getProduct() {
    return this._products;
  }

这是我在 html 上显示数据的方式 -

<ng-container *ngFor="let product of getProduct()">
        <span class="productInfo__title">{{ product.getTitle() }}</span>
</ng-container>

我想将其更改为订阅,因为我希望在更改查询时对其进行更新。我怎样才能做到这一点?谢谢

标签: htmlangulartypescript

解决方案


import { ActivatedRoute, Data } from '@angular/router';
....
....

constructor(private route: ActivatedRoute) {}

ngOnInit() {
    this.route.data.subscribe((data: Data) => {
        const products = data['users'] as IProductInterface[];
        this._products = products.map((product) => new Product(product));
    })    
}

推荐阅读