Typescript我如何扩展使用泛型的接口?

userqwert

我已设置此接口结构:

export interface Response<T> {
  hasMoreResults: boolean
  pageToken: string | null
  status: string
  result: T
}

export interface ArrayResponse<T> {
  hasMoreResults: boolean
  pageToken: string | null
  status: string
  result: T[]
}

由于有许多共享字段,所以我想写这样的东西:

interface ArrayResponse extends Response<T>{
    result: T[]
}

但是,这引发了我无法修复的错误。是否有一种简单的方法来更改在两种情况下都使用通用属性的属性类型?我不想T | T[]在一个界面中这样做,因为这会导致我的代码出现问题。谢谢。

阿卡斯

看你的代码之间的唯一区别ArrayResponse,并Responseresult是一个数组。

您可以使用:

export interface Response<T> {
  hasMoreResults: boolean
  pageToken: string | null
  status: string
  result: T
}

export type ArrayResponse<T> = Response<T[]>

作为Response已经可以接受任何类型的参数。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在TypeScript中使用泛型扩展接口

来自分类Dev

Typescript泛型扩展类和接口

来自分类Dev

使用泛型正确扩展接口

来自分类Dev

Typescript - 使用泛型扩展具有联合类型属性的接口

来自分类Dev

创建仅使用字符串键扩展接口的 TypeScript 泛型类型

来自分类Dev

Typescript:泛型,使用泛型扩展类型

来自分类Dev

如何在接口上使用泛型

来自分类Dev

如何正确创建在Java中扩展泛型接口的有界泛型类

来自分类Dev

使用Typescript泛型从AngularFire的已定义结构创建接口

来自分类Dev

我如何使用其接口作为泛型来声明变量

来自分类Dev

Java中的泛型,扩展接口

来自分类Dev

编写接口作为泛型的扩展

来自分类Dev

在vscode扩展中使用来自javascript的Typescript泛型

来自分类Dev

使用 TypeScript checkJs 在 JSDoc 中扩展泛型类型的方法?

来自分类Dev

使用接口的泛型转换

来自分类Dev

使用接口的泛型转换

来自分类Dev

如何多次实现相同的接口,但使用不同的泛型?

来自分类Dev

如何在Java接口中使用泛型的泛型

来自分类Dev

如何在类中使用扩展的泛型类型的类型?

来自分类Dev

如何在扩展方法中使用泛型类型成员?

来自分类Dev

如何验证泛型在Java中扩展了另一个类/接口?

来自分类Dev

使用非泛型类注册泛型接口

来自分类Dev

如何使用泛型

来自分类Dev

如何使用泛型?

来自分类Dev

如何使用泛型

来自分类Dev

如何实现接口泛型方法

来自分类Dev

如何实现接口泛型方法

来自分类Dev

如何将泛型类扩展为泛型

来自分类Dev

使用泛型创建接口对象