You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Redux中使用TypeScript时initialState初始化报错问题咨询

错误原因
  • 类型标注不匹配:你定义的Book接口描述的是单本书籍的结构,但initialState实际是包含Books(书籍列表)、likedBook(点赞书籍列表)两个数组属性的状态容器,和Book接口的结构完全不一致,因此TypeScript会抛出类型校验错误。
  • 数组初始化语法错误:Book[]是TypeScript的类型声明语法,仅可用于类型标注场景,不能作为实际值赋值给对象属性,运行时会直接抛出语法错误。
  • 额外小问题:TypeScript中表示字符串、布尔值等原始类型时,应使用小写的string/boolean,大写的String/Boolean是JS内置的包装对象类型,不适用于普通变量的类型标注。
修正后代码
// 单本书籍类型定义,修正原始类型写法
export interface Book{
    title : string, 
    contents: string,
    thumbnail: string,
    liked: boolean
}

// 新增对应state结构的类型接口
interface BookState {
  Books: Book[],
  likedBook: Book[]
}

// 标注正确的state类型,用空数组初始化属性
const initialState : BookState = {
    Books : [],
    likedBook: []
};

内容的提问来源于stack exchange,提问作者sojinLee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 10:36:03