与打字稿中另一个对象具有相同键的对象?

离开托夫

我有一个produce具有以下签名的方法

interface ProduceConditions {
    [key: string]: Function|Promise<any>;
}

produce(conditions: ProduceConditions, input: any): Promise<object>|object;

问题是返回的(已解析的)对象具有与该conditions对象相同的键


编辑:我应该添加对函数源的引用,该源位于https://github.com/selfrefactor/rambdax/blob/master/modules/produce.js

琼斯·哈珀

如果我正确理解了您的要求,那么您的输入conditions将是ProduceConditions带有一组键的实现,并且返回值(无论是否包装在Promise中)将具有相同的键,但所有值都已解析。

在这种情况下,您要查找的签名将类似于:

produce<T extends ProduceConditions, U extends { [key in keyof T]: any }>(conditions: T, input: any): Promise<U> | U

在这里,我使用了两种通用类型来表示输入和输出,要求输入类型T符合的定义,ProduceConditions并且输出类型U具有与相同的键T

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

打字稿:比较作为接口类型的对象是否等于另一个对象具有相同的接口类型

Javascript将对象值插入另一个具有相同键的对象

用另一个具有相同键的对象替换对象数组中的键值

从另一个具有相同键的对象数组创建一个对象数组

嵌套在嵌套对象中,具有与mongoDB中的另一个集合相同的键聚合

打字稿仅允许来自另一个对象的键

如何在python中创建与另一个对象具有相同内容的对象?

当两个对象具有相同的键时,如何根据另一个对象中给出的标准对来自对象的数据进行分类?

打字稿基于接口从另一个对象创建一个对象

打字稿,将一个对象映射到另一个对象?

如何从另一个列表中订购具有匹配键的对象列表?

JavaScript:如果另一个对象在另一个属性中具有相同的值,则更改对象的值

如何在JavaScript中从具有相同定义的另一个对象向对象属性添加值

打字稿 - 检索另一个对象内的对象

如何将数组对象推入另一个数组对象,打字稿

打字稿:另一个参数的键?

根据另一个对象的相同键对一个对象进行类型转换

打字稿:如果对象中存在另一个道具,则强制执行道具

将 JS 对象数组推送到具有匹配对象键的另一个对象数组

克隆Django模型实例对象并将其保存到具有相同字段的另一个模型中

如何在JavaScript中的另一个对象中查找具有属性的对象

打字稿:无法从另一个文件导入对象

从另一个* .ts文件创建打字稿的对象

基于另一个数组的对象的打字稿过滤器数组

通过具有重复键的另一个数组过滤对象数组

打字稿:具有单个键的对象

具有相同属性IDUris值的另一个对象已存在

如何从与另一个值具有相同键的 localStorage 中删除单个值?

如何检索另一个模型中具有最相关对象的模型对象?