Typescript Доступ к закрытому или защищенному члену «что-то» для параметра типа - PullRequest
2 голосов
/ 27 февраля 2020
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)


  }
}

Есть ли способ сослаться на тип защищенного члена класса в самом классе?

1 Ответ

2 голосов
/ 27 февраля 2020

Это легко решить, используя имя класса вместо this:

class SomeClass {
  protected someMethod(): void {

  }

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

  }
}

Playground Link

...