Как добавить правильную типизацию для mapDispatchToProps (typesafe-actions) - PullRequest
0 голосов
/ 23 мая 2019

Как добавить правильный набор к mapDispatchToProps, используя typesafe-actions?

interface ActionAsyncRequest {
  a: string;
  b: number;
}

interface ActionAsyncSuccess {
  a: number;
}

interface ActionAsyncFailure { }


const actionAsync = createAsyncAction(
  '@namespace/REQUEST',
  '@namespace/SUCCESS',
  '@namespace/FAILURE'
)<
  ActionAsyncRequest,
  ActionAsyncSuccess,
  ActionAsyncFailure
>();

interface DispatchProps {
  myFunction: ActionType<typeof actionAsync.request> // this row should be fixed
}
const mapDispatchToProps: DispatchProps = {
  myFunction: actionAsync.request, // issue arises here
};

Проблема:

Type 'PayloadAC<"@namespace/REQUEST", ActionAsyncRequest>' is missing the following properties from type 'PayloadAction<"@namespace/REQUEST", ActionAsyncRequest>': type, payload

ОБНОВЛЕНИЕ:
Мне удалось это исправить.Не знаю, если это идеальное решение, но оно работает.

interface DispatchProps {
  myFunction: typeof actionAsync.request // returns 'PayloadAC<"@namespace/REQUEST", ActionAsyncRequest>'
}
...