Lodash中的_.matchesProperty简写不起作用但提供功能

时间:2017-06-20 13:55:50

标签: javascript angularjs lodash

我对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

我猜我搞砸了一些相当简单的东西,但我不能,因为我的生活,弄清楚是什么。

0 个答案:

没有答案