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

FireCMS配置oneOf混合类型数组报TypeScript错误的解决咨询

问题原因

你对FireCMS混合类型数组的oneOf配置结构理解有误,所以触发了TS类型校验错误:

  1. 数组类型需要先通过of字段定义每一项的基础类型为map,因为你每一条数组元素是包含type和value的对象结构
  2. oneOf字段不能直接放属性配置,必须嵌套在数组项的map配置内,且oneOf下必须包含properties字段声明所有支持的类型对应的属性规则,你直接把type、config等字段写在oneOf下,不符合类型定义要求。
修正后的配置

仅支持字符串的基础版本

content: {
  title: "Content",
  description: "This is your page content",
  dataType: "array",
  // 定义数组每一项是map结构
  of: {
    dataType: "map",
    oneOf: {
      // 声明所有支持的类型规则,key对应type字段的存储值,value对应value字段的属性配置
      properties: {
        "Copy": {
          dataType: "string",
          markdown: true
        }
      }
      // typeField默认值为"type",valueField默认值为"value",和你需要的存储结构完全匹配,无需额外配置
    }
  }
}

后续添加图片类型的扩展版本

需要新增图片支持时,直接在oneOf.properties下新增类型配置即可:

content: {
  title: "Content",
  description: "This is your page content",
  dataType: "array",
  of: {
    dataType: "map",
    oneOf: {
      properties: {
        "Copy": {
          dataType: "string",
          markdown: true
        },
        // 新增图片类型配置
        "Image": {
          dataType: "string",
          storage: {
            storagePath: "你的图片存储路径",
            acceptedFiles: ["image/*"]
          }
        }
      }
    }
  }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 21:39:01