Angular 不推荐使用字符串作为事件,并将在将来的版本中删除

Angular 不推荐使用字符串作为事件,并将在将来的版本中删除,angular,grafana,Angular,Grafana,我正在使用以下命令生成新的Grafana项目: npx @grafana/toolkit plugin:create my-plugin 部署并浏览仪表板后,我在控制台中看到: 不推荐使用字符串作为事件,并将在将来的版本中删除。(初始编辑模式) 不推荐使用字符串作为事件,并将在将来的版本中删除。(渲染) 不推荐使用字符串作为事件,并将在将来的版本中删除。(数据错误) 模板中的代码如下所示: this.events.on('init-edit-mode', this.onInitEditMode

我正在使用以下命令生成新的Grafana项目:

npx @grafana/toolkit plugin:create my-plugin
部署并浏览仪表板后,我在控制台中看到:

不推荐使用字符串作为事件,并将在将来的版本中删除。(初始编辑模式)
不推荐使用字符串作为事件,并将在将来的版本中删除。(渲染)
不推荐使用字符串作为事件,并将在将来的版本中删除。(数据错误)

模板中的代码如下所示:

this.events.on('init-edit-mode', this.onInitEditMode.bind(this));
this.events.on('render', this.onRender.bind(this));
this.events.on('data-error', this.onDataError.bind(this));

this.events.on(PanelEvents.dataReceived, this.onDataReceived.bind(this));
this.events.on(PanelEvents.dataSnapshotLoad, this.onDataReceived.bind(this));
this.events.on(PanelEvents.editModeInitialized, this.onInitEditMode.bind(this));

我现在不知道为什么他们没有在模板中修复这个问题,但这里是解决方案

幸运的是,它们的
PanelEvents
命名空间中有常量

因此,您可以简单地执行以下操作:

this.events.on(PanelEvents.editModeInitialized, this.onInitEditMode.bind(this));
this.events.on(PanelEvents.render, this.onRender.bind(this));
this.events.on(PanelEvents.dataError, this.onDataError.bind(this));
这使浏览器中的控制台很高兴