<t>是什么意思?

时间:2019-05-15 17:39:46

标签: typescript generics

我在d.ts file中遇到了这种界面分离:

interface SelectProps<T = SelectValue> extends AbstractSelectProps { /* ... */ }

在TypeScript手册(在GenericsAdvanced Types下)和what's new in TypeScript页面上都找不到<T =

我熟悉<T extends ...>,它在文档中反复出现,但这是我第一次遇到<T = ...>

此结构有名称吗?这是什么意思? =extends有什么区别?

1 个答案:

答案 0 :(得分:2)

T = Whatever是泛型的一个相对较新的功能,允许您指定默认类型(如果使用者希望使用默认类型,则可以避免使用方通过)。

详细了解Herehere

示例:

abstract class Component<Props = {}, State = {}> {
  // ...
}

// Pass only the first generic for Props, State will be {}
class MyComponent extends Component<{foo: string}> {
  // ...
}
相关问题