无法在类型参数上访问 Typescript 私有或受保护成员'something'


class SomeClass<T extends string> {
protected someMethod(): void {
}
protected someOtherMethod(): ReturnType<this["someMethod"]> { 
// Private or protected member 'someMethod' cannot be accessed on a type parameter.ts(4105)

}
}

有没有任何方法可以在类本身中引用回受保护类成员的类型?

这可以通过使用类名而不是this:轻松解决

class SomeClass {
protected someMethod(): void {
}
protected someOtherMethod(): ReturnType<SomeClass["someMethod"]> { 
}
}

游乐场链接

最新更新