我知道什么是keyof Events或Key extends keyof Events。但是= keyof Event在这里做了什么呢?
interface PublicEmitter<Events, Key extends keyof Events = keyof Events>{ // ... }我学习了这个typescript代码的例子:
https://github.com/sergeysova/emitting/blob/master/src/index.ts#L12
发布于 2020-05-05 01:16:39
= keyof Event是类型参数的默认类型。这意味着如果没有为该类型参数指定类型参数,则使用默认值。所以PublicEmitter<any>等同于PublicEmitter<any, keyof Events>。如果没有默认的PublicEmitter<any>,则会出现编译器错误,因为并未指定所有类型参数。
https://stackoverflow.com/questions/61597892
复制相似问题