跳至主要内容

将插件从 Grafana 版本 9.1.x 迁移到 9.2.x

请按照以下说明将插件从 Grafana 版本 9.1.x 迁移到 9.2.x。

React 和 React-dom 作为对等依赖项

在早期版本的 Grafana 包中,无论插件的依赖项如何,reactreact-dom 都将在 yarn install 命令期间安装。在 9.2.0 版本中,@grafana 包将这些 React 包声明为 peerDependencies,并且必须添加到插件的 package.json 文件中以用于测试命令。

示例

// before
"dependencies": {
"@grafana/data": "9.1.0",
"@grafana/ui": "9.1.0",
},

// after
"dependencies": {
"@grafana/data": "9.2.0",
"@grafana/ui": "9.2.0",
"react": "17.0.2",
"react-dom": "17.0.2"
},

NavModelItem 的类型定义已改进,仅允许对图标属性使用有效的 IconName。有关有效图标的完整列表,请参阅 源代码。这些图标适用于旧版本的 Grafana 9。

示例

// before
const model: NavModelItem = {
id: 'settings',
text: 'Settings',
icon: 'fa fa-cog',
url: `${baseUrl}/settings`,
};

// after
const model: NavModelItem = {
id: 'settings',
text: 'Settings',
icon: 'cog',
url: `${baseUrl}/settings`,
};

其他类型可用性

FieldPropsModalPropsQueryFieldProps 现在已从 @grafana/ui 中公开。它们可以与其他类型一样导入。

示例

import { FieldProps, ModalProps, QueryFieldProps } from '@grafana/ui';