lodash升级后的错误

问题描述 投票:0回答:1

我将Angular JS项目的lodash库从(v 2.4.1升级到4.17.15)和类型/ lodash(v 3.10.1到4.14.136)进行了升级。升级后,我发现_.find错误。错误说明

:类型'{'Id'的参数:任意; }”不能分配给类型为“ ListIteratorTypeGuard ”的参数。

this.search = _.find<{}, IdModel>(this.Idlist, {'Id': Id});

我们如何将其转换为ListIteratorTypeGuard?我没有找到任何解决方案。如果有人知道如何解决,请提供帮助。

angularjs typescript types lodash restangular
1个回答
0
投票

如果要强制执行速记对象的部分检查,这会有所帮助。

type IdModel = { id: number, foo: string }; const list: Array<IdModel> = [{ id: 1, foo: 'test'}]; find<IdModel>(list, { id: 1});

但是在大多数情况下,您不应该指定通用参数,而应使用默认的推断参数

© www.soinside.com 2019 - 2024. All rights reserved.