插件开发
本页聚焦 自定义插件,说明它在 Squidoc 项目中的工作方式。
你将配置什么
你将学习如何添加 build hook、生成文件、元数据、文档扩展和插槽。
发布前检查
选项应显式验证并写入用户文档。
相关阅读
示例
import { definePlugin } from "@squidoc/core";
export default definePlugin({
name: "@acme/squidoc-plugin-example",
setup(api) {
const message =
typeof api.pluginOptions.message === "string"
? api.pluginOptions.message
: "Generated during squidoc build.";
api.addGeneratedFile({
path: "example.txt",
contents: `${message}\n`,
});
},
});
plugins: [
{
name: "@acme/squidoc-plugin-example",
options: {
message: "Generated from plugin options.",
},
},
];
api.addThemeSlot({
name: "search",
component: "@squidoc/plugin-search/Search.astro",
html: "<div data-squidoc-search>...</div>",
});