Как создать файл определения машинописного текста (d.ts) для существующего компонента с подключением к редуксу (jsx)?

Я добавляю новые компоненты, написанные на TypeScript(TSX), в существующую кодовую базу, состоящую из ванильных компонентов ES6 реагирования (JSX). При импорте существующих jsx-компонентов в tsx-компонент я добавляю определения типов для jsx-компонентов.

Моя проблема заключается в том, как добавить определение типа для jsx-компонента, который подключен к Redux с помощью Connect

Скажем, у меня есть существующий компонент jsx:

class DateField extends React.Component {
...
}

function mapStateToProps(state) {
  return {
    locale: state.systemUser.language.langKey
  };
}

export default connect(mapStateToProps) (DateField);

Как будет выглядеть определение типа для этого компонента?

Примечание: без подключения я бы написал определение типа следующим образом:

import * as React from 'react';
import * as moment from "moment";

export type IonDateFieldChange = (value: string | Date | moment.Moment) => void;
export interface IDateFieldProps {
  value: string | Date | moment.Moment
  onChange?: IonDateFieldChange
  placeholder?: string
}
declare class DateField extends React.Component<IDateFieldProps,any> {}

0 ответов

Другие вопросы по тегам