У меня есть один реагирующий компонент, и на основании изменения реквизита маршрутизации я выполняю некоторые действия. У меня есть одна функция stati c в классе, но машинопись не получает свойства класса.
Я экспортирую компонент как withRouter(MyComponent)
и хочу получить доступ к свойству stati c компонента MyComponent.myStaticMethod()
.
Как я могу использовать для этого соответствующие наборы. Я строго следую за машинописью, поэтому я не хочу использовать тип any
. Ниже приведен пример кода.
class MyComponent extends React.Component<RouteComponentProps>{
public static myStaticMethod():void{
console.log("myStaticMethod called");
}
public render(): JSX.Element {
return // something;
}
// some other life cycle methods with required logic
}
export default withRouter(MyComponent);
Но при попытке доступа к методу stati c MyComponent.myStaticMethod()
Property 'myStaticMethod' does not exist on type 'ComponentClass<Pick<RouteComponentProps<{}, StaticContext, any>, never>, any>'.
выдается ошибка.
Работает нормально с любым типом ((MyComponent as any).myStaticMethod()
), но я не хочу использовать any
.