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

Redux Toolkit中createEntityAdapter定义selectId后updateOne报错如何解决?

createEntityAdapter update方法类型错误解决

核心原因

createEntityAdapter的selectId配置仅定义读取实体对象自身ID的规则,不会修改更新类方法的入参结构。所有更新方法(updateOne/updateMany)接收的Update类型固定要求两个字段:

  • id:要更新的实体的唯一标识值,对应你selectId返回的结果
  • changes:要修改的实体属性集合

你实体的ID字段叫bookId仅影响selectId的取值逻辑,不代表更新时要把入参的id字段换成bookId,这是两类完全不同的逻辑。

正确写法

把你调用updateOne的代码替换为以下内容即可:

const stateThree = entityAdapter.updateOne(stateTwo, {
  // 此处固定使用id字段,值为目标实体的bookId
  id: 3,
  changes: {
    title: "three - change"
  }
});

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 11:27:04