将插件从 Grafana 9.1.x 版本迁移到 9.2.x 版本
按照以下说明将插件从 Grafana 9.1.x 版本迁移到 9.2.x 版本。
React 和 React-dom 作为 peer dependency
在 Grafana 包的早期版本中,无论插件的依赖关系如何,yarn install
命令都会安装 react
和 react-dom
。在 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
的类型已改进,现在只允许对 icon 属性使用有效的 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';