我有一个带有React
, Redux
, Immutable.js
+的配置项目TypeScript
。在实现过程中,我试图尽可能多地声明类型并发现了有趣的问题。请参见下面的代码示例:
redux store 的简短配置
import { createStore } from 'redux';
import { combineReducers } from 'redux-immutable';
const rootReducer = combineReducers({...});
const store = createStore(rootReducer);
组件内部某处
// ...
const mapStateToProps = (state: ReturnType<typeof rootReducer>) => {
// state is plain object :(
};
在 VS Code 中状态悬停时,工具提示显示状态是一个普通对象,但它不是。它应该是来自的自定义集合Immutable.js
我怎样才能得到正确的类型rootReducer
?或者我做错了什么?
截图:
PSStateType
并ReturnType
做同样的事情