Как типизировать dispatch функции?

Возникла проблема с typescript и диспатчем функции, я не знаю какой тип нужно применить. Вот код экшена, в котором возникает ошибка:

import { Dispatch } from 'redux'
import { db } from '../../index'

import loadPatternsCreator from './actionCreator'
import loadPatternsActionType from './actionType'

import setError from '../setError'
import setErrorActionType from '../setError/actionType'

const loadPatterns = (term: string) => (dispatch: Dispatch<loadPatternsActionType | setErrorActionType>) => {
  try {
    dispatch(loadPatternsCreator([{}])) // эта функция сразу возвращает объект
  } catch (e) {
    dispatch(setError(e.message)) // здесь возникает ошибка, т.к. setError возвращает функцию
  }
}

export default loadPatterns

вот код экшена setError:

import { Dispatch } from 'redux'
import setErrorActionType from './actionType'
import setErrorCreator from './actionCreator'

const setError = (msg: string) => (dispatch: Dispatch<setErrorActionType>) => {
  dispatch(setErrorCreator(msg))
}

export default setError

Какой тип нужно применить? Заранее спасибо за ответ.


Ответы (0 шт):