React Redux Компонент класса Typescript ES6

Когда мне нужно извлечь общую логику из разных компонентов,
Я создаю общий класс для размещения сервиса.
И хотите использовать как ниже

MyServiceClass.commonMethodUsingProps() 

Я знаю, что нам нужно использовать static в этой ситуации.
Все прошло хорошо, пока какая-то логика связана с избыточными данными, полученными ниже.

Свойство ‘props’ не существует для типа ‘typeof Component’.ts (2339)

Здесь что-то не так? Я проверил, как QA передает компоненты « props -a-a-static-реагировать-компоненты» и » call-a-static-function-in-the-the-class-реагировать-es6″ , пожалуйста, напомните мне, если я что-то упустил.

 interface Props { xxx: Store['xxx'], } interface State { } class Component extends React.Component{amp}lt;Props, State{amp}gt; { constructor(props: Props) { super(props); this.state = { }; } static commonMethodUsingProps() { this.props.xxx // {amp}lt;= ooops! Property 'props' does not exist on type 'typeof Component'.ts(2339) } } export const MyServiceClass = connect( (store: Store) ={amp}gt; ({ xxx: store.xxx, }), (dispatch: any) ={amp}gt; ({ }) )(Component); 

Кроме того, если есть, какой-либо другой шаблон написания повторно использовать логику / сервис с редуксными реквизитами, используя компонент класса?
Обратите внимание, что это может быть невозможно обработать без компонента React, обратитесь к хранилищу «это возможно для подключения, не для компонента, класса к избыточному хранилищу».

Я сделал это, но это уродливо

 export class MyServiceClass() { static A(props: any, ...) { MyServiceClass.B(props, ...) } static B(props: any, ...) { MyServiceClass.C(props, ...) } static C(props: any, ...) { MyServiceClass.commonMethodUsingProps(props, ...) } static commonMethodUsingProps(props: any, ...) { props.xxx } } 
 MyServiceClass.A(this.props, ...) 

В статическом методе this не ваш объект экземпляра, это объект класса. Если вы запустите код MyServiceClass.commonMethodUsingProps() что вы ожидаете от this.props ?

Поэтому вам придется либо передавать реквизиты вручную, либо вообще не использовать static метод.

Я бы сказал, что если вы хотите, чтобы функция this.props к this.props , вам нужен не статический метод, а обычный метод, где this ваш экземпляр.

Либо создайте нормальную функцию, которая мутирует ваш реквизит и привязывает «this» к вашей функции. Или передайте реквизиты в качестве параметра, а затем измените его.