插件资源
以下是一些有助于开始插件开发的资源。
如果您还没有开始,请从 入门 开始。如果您计划将插件添加到 Kibana 仓库,请阅读 贡献 指南;如果您要从外部构建插件,请阅读 外部插件开发。在这两种情况下,请阅读我们推荐的 最佳实践。
您可以使用 自动插件生成器 来获取新插件的基本结构。不属于 Kibana 仓库的插件应在 plugins
文件夹中开发。如果您正在构建一个新插件以签入到 Kibana 仓库,您将在几个位置之间进行选择
- x-pack/plugins 用于与订阅功能相关的插件
- src/plugins 用于与免费功能相关的插件
- examples 用于开发人员示例插件(这些将不包含在可分发文件中)
如果您正在开发具有用户界面的插件,请查看我们的 Elastic UI 框架。它记录了我们用于构建 Kibana 用户界面的 CSS 和 React 组件。
欢迎您使用这些组件,但请注意它们正在快速发展,我们可能会引入会破坏您插件 UI 的重大更改。
我们建议您的插件代码用 TypeScript 编写。要启用 TypeScript 支持,请在插件的根目录创建一个类似于以下的 tsconfig.json
文件
{
// extend Kibana's tsconfig, or use your own settings
"extends": "../../kibana/tsconfig.json",
// tell the TypeScript compiler where to find your source files
"include": [
"server/**/*",
"public/**/*"
]
}
TypeScript 代码在开发期间会自动转换为 JavaScript,但在 Kibana 的可分发版本中则不会。如果您使用 @kbn/plugin-helpers 来构建您的插件,那么您的 .ts
和 .tsx
文件将在插件存档之前永久转译。如果您有自己的构建过程,请确保在源文件上运行 TypeScript 编译器并提供编译输出,以便您的插件可以使用 Kibana 的可分发版本。
如果您在 Kibana 仓库之外构建插件,请阅读 外部插件开发。