reactjs - 使用 Typescript 的 Redux reducer 初始状态
问题描述
我想用打字稿创建一个减速器!
paymentReducer.tsx
let initialState = {
saved: [],
};
export interface Payment {
saved: ISavedPayment[];
}
export let payment = (
state = initialState,
{ type, payload }: PaymentActions
): Payment => {
switch (type) {
case SAVED_PAYMENTS_LOADED:
return { ...state, saved: payload };
default:
return state;
}
};
没有错误!但是reducersaved
的参数中的数组类型变成了。但它应该是吗?state
never
ISavedPayment[]
(parameter) state: { saved: never[]; }
解决方案
明确指定 initialState 的类型:
const initialState: { saved: ISavedPayment[] } = {
saved: [],
};
也可以看看:
推荐阅读
- r - 我怎样才能有下拉“输入块”?
- javascript - 为什么匿名函数不能作为默认值的函数参数?
- push-notification - 使用 Firebase 为每个用户设备自定义推送通知设置
- windows - 使用 windows Installer 进行 Chrome 安装?
- nativescript - ios发布构建代码签名不起作用
- python - Django中的NoReverseMatch?
- java - JAVA get request with authorization header value
- tensorflow - 输入值范围与损失收敛之间的联系
- php - 如何使用 Symfony 3.4 组件更新实体
- kotlin - 无法返回 http 请求的正文