【发布时间】:2022-01-03 13:04:40
【问题描述】:
有谁知道为什么 Contentful(以及大多数其他无头 CMS 产品,如 GraphCMS)不支持接口继承,但是通过使用联合在字段级别的多态性概念似乎很有用,并且为不同的用例增加了价值?
有时了解类型并确保对象具有某些字段(接口继承)很重要,有时这并不重要,联合字段的多态性很有用。
还有其他解决方案/模型设计模式吗?
所以我想实现这个(在 GraphQL 层):
interface ContentItem {
title: string;
}
type SpecificContentItemA implements ContentItem {
body: string;
}
type SpecificContentItemB implements ContentItem {
body: string;
}
type Space {
items: ContentItem;
}
代替Contentful目前的功能:
type SpecificContentItemA {
body: string;
}
type SpecificContentItemB {
body: string;
}
type Space {
items: SpecificContentItemA | SpecificContentItemB;
}
谢谢!
【问题讨论】:
标签: graphql contentful headless-cms