зернокомбайн не выводит тип - PullRequest
1 голос
/ 16 января 2020

Я использую combineReducers в своем приложении React TypeScript:

// combinedReducer.ts
import { combineReducers } from 'redux'
import reducer1 from './reducer1'
import reducer2 from './reducer2'

const combinedReducer = combineReducers({
    reducer1,
    reducer2,
})

export default combinedReducer

Я понимаю из избыточной документации , что combineReducers должно выводить его тип на основе комбинированных редукторов.

Однако, для меня это не так, хотя каждый комбинированный редуктор распознает свой тип возврата: enter image description here enter image description here enter image description here

(ReturnType<typeof combidedReducer> is unknown)

Что здесь не так?

Вот мои максимально упрощенные редукторы:

// reducer1.ts
const initialState: boolean = false

const reducer1 = (state = initialState): boolean => state

export default reducer1
// reducer2.ts
const initialState: boolean = false

const reducer2 = (state = initialState): boolean => state

export default reducer2

1 Ответ

0 голосов
/ 25 марта 2020

Убедитесь, что Redux имеет версию 4.0.0 или выше. Отображения типов для combReducers были выпущены с версией 4.0.0, вот соответствующий PR на redux github .

Вы можете обновить свой пакет. json file:

...
"dependencies": {
   "redux": "^4.0.3"
}
...

Затем запустите npm install для обновления до последней версии.

После внесения этого изменения не забудьте перезапустить IDE, чтобы перезагрузить сопоставления типов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...