我对Lodash很新,我在_.find
函数的速记符号上遇到了一些问题。
我有以下角度2对象:
export class ProductData {
id: number;
name: string;
description: string;
type: ProductTypeData;
}
然后,我通过过滤产品类型创建了一个ProductData数组。我使用此数组在下拉列表中向用户显示值。当用户从下拉列表中选择产品时,我将id存储在本地变量productId中。当用户关闭对话框时,我正在对所选产品进行处理。
以下代码适用于我:
var self = this;
let selectedProduct = _.find(this.filteredProducts, function(product) { return product.id == self.productId; });
我宁愿使用_.matchesProperty
简写为Lodash(因为它比读取变量更清晰),如下所示:
let selectedProduct = _.find(this.filteredProducts, ['id', this.productId]);
但这对我来说是undefined
。
我猜我搞砸了一些相当简单的东西,但我不能,因为我的生活,弄清楚是什么。