redux-thunk с машинописным текстом

Я пытаюсь изучить redux и пытаюсь реализовать redux-thunk промежуточное ПО. Я следил за несколькими разными уроками, и они предлагают нечто подобное:

import thunk from "redux-thunk";
import promise from "redux-promise-middleware";
...
const middleware = applyMiddleware(promise(), thunk);
const store = createStore(reducers, middleware);

Это дает мне следующую ошибку:

/Users/me/Documents/workspace/redux/node_modules/redux-thunk/index.d.ts (4,47): для универсального типа Dispatch требуется 2 аргумента типа.

Может кто-нибудь объяснить, что происходит и как это исправить?

Большое спасибо


person JT-Helsinki    schedule 18.04.2018    source источник


Ответы (2)


Эта проблема связана с тем, что новая версия redux (4.0.0) несовместима с текущей версией redux-thunk (2.2.0).

См. Эту ссылку: https://github.com/gaearon/redux-thunk/issues/169

и этот PR: https://github.com/gaearon/redux-thunk/pull/180

person JT-Helsinki    schedule 19.04.2018

Я думаю, вам нужно набрать dispatch таким образом:

interface IStoreState {
  readonly pendingActions: number;
  readonly isAuthenticated: boolean;
};

function signIn(): (dispatch: Dispatch<IStoreState>) =>  ....

Связанная статья.

person Tomasz Mularczyk    schedule 18.04.2018