将插件从 Grafana 版本 9.1.x 迁移到 9.2.x
请按照以下说明将插件从 Grafana 版本 9.1.x 迁移到 9.2.x。
React 和 React-dom 作为对等依赖项
在早期版本的 Grafana 包中,无论插件的依赖项如何,react
和 react-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
需要有效的图标名称
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`,
};
其他类型可用性
FieldProps
、ModalProps
和 QueryFieldProps
现在已从 @grafana/ui
中公开。它们可以与其他类型一样导入。
示例
import { FieldProps, ModalProps, QueryFieldProps } from '@grafana/ui';