错误TypeError:this.product.filter不是使用Angular6的函数

时间:2018-09-20 12:19:30

标签: angular typescript filter

我有这个功能:

  public product: Product[] = [];

getProductTName(productTypeId: string) {
        const [filteredProdType] = this.product.filter(pt => pt.product_type_id === productTypeId);
        if (typeof filteredProdType !== 'undefined' && productTypeId === filteredProdType.product_type_id) {
            return filteredProdType.product_type_name;
        } else {
            return false;
        }
    }

在此功能中,当ERROR TypeError: this.product.filter is not a function为空时,出现此错误product

请,您能问我任何想法吗,如何修改代码以不显示此错误?

1 个答案:

答案 0 :(得分:0)

只需添加一个检查this.product是否为空或为空

if(this.product && this.product.length > 0){
 const [filteredProdType] = this.product.filter(pt => pt.product_type_id === productTypeId);
        if (typeof filteredProdType !== 'undefined' && productTypeId === filteredProdType.product_type_id) {
            return filteredProdType.product_type_name;
        } else {
            return false;
  }
}