Я в настоящее время смущен типом моего создателя действия в приложении Reaction-Redux, над которым я работаю. У меня есть этот создатель действий с типами по обе стороны уравнения, и компилятор TS сказал, что все идеально:
const setItem: ActionCreator<ThunkResult<void>> = (...): ThunkResult<void> => (...): void => {
dispatch({
...
});
};
, где ThunkResult ThunkResult<R> = ThunkAction<R, IStoreState, null, ActionTypes>
Что мне не понятно, почему нас левой стороны возвращается тип функции ActionCreator<ThunkResult<void>>
, с правой стороны - ThunkResult<void>
.
Примечание : я пропустил аргументы, так как они не важны в этом вопросе.
Я не уверен, является ли это неправильным пониманием функций TS или это проблема в TS.