如何为 Strapi 插件创建组件
页面摘要: 使用内容类型构建器(Content-Type Builder),或在插件服务端目录中手动定义包含属性与元数据的 schema 文件,来为 Strapi 插件创建可复用的
component数据结构。
开发 Strapi 插件 时,你可能希望为自己的插件创建可复用的组件。Strapi 中的组件(component)是可复用的数据结构,可在不同的内容类型之间使用。
为 Strapi 插件创建组件,需要采用与创建内容类型类似的方式,但存在一些具体的差异。
创建组件
你可以通过 2 种不同的方式为插件创建组件:使用内容类型构建器(推荐方式)或手动创建。
使用内容类型构建器
为插件创建组件的推荐方式是通过管理面板中的内容类型构建器(Content-Type Builder)。
内容类型构建器文档 提供了关于此过程的更多细节。
手动创建组件
如果你更倾向于手动创建组件,需要:
- 在插件的目录结构中创建一个组件 schema。
- 确保组件已被正确注册。
插件的组件应放置在插件目录结构中合适的位置。通常应在插件的服务端部分创建它们(参见 插件结构文档)。
关于 Strapi 中组件的更多详细信息,可以参考 模型属性文档。
查看组件结构
Strapi 中的组件在定义时遵循以下格式:
{
"attributes": {
"myComponent": {
"type": "component",
"repeatable": true,
"component": "category.componentName"
}
}
}
组件 schema 示例
组件 schema 定义了可复用数据片段的结构。以下是某个插件组件 schema 的示例:
{
"collectionName": "components_my_category_my_components",
"info": {
"displayName": "My Component",
"icon": "align-justify"
},
"attributes": {
"name": {
"type": "string",
"required": true
},
"description": {
"type": "text"
}
}
}
该配置可确保你的组件在同时启用了 pluginOptions 可见性的内容类型中,既能在内容类型构建器(Content-Type Builder)中使用,也能在内容管理器(Content Manager)中使用。