Хорошо, то, что у меня есть, на самом деле правильно, но у меня была плохая реализация при создании констант в createAsyncAction
Я динамически генерировал константы, как показано ниже:
function createAsyncTypes(type: string) {
return {
REQUEST: type + "_REQUEST",
SUCCESS: type + "_SUCCESS",
ERROR: type + "_ERROR"
}
}
Исервер TS не смог вычислить это во время linting, и это вызвало путаницу во время сцепления.
Я изменил их на это,
export const login = createAsyncAction(
"LOGIN_REQUEST",
"LOGIN_SUCCESS",
"LOGIN_FAILURE"
)<ILoginRequest, ILoginSuccess, Error>();
И сервер TS действительно показывает экспорт