0

我们一直在使用tips配置series来为ExtJS 4 和 5设置交互式提示。但是对于ExtJS 6,它不再起作用了。那么使用ExtJS 6图表包显示提示的正确方法是什么?

series: [{
    type: 'pie',
    field: 'count',
    showInLegend: true,
    donut: false,
    tips: {
        trackMouse: true,
        width: 140,
        height: 40,
        renderer: function(storeItem, item) {
            this.update(storeItem.get('name') + ':' + storeItem.get('count'));
        }
    }
}]
4

3 回答 3

4

看起来工具提示renderer方法参数已在版本之间交换,否则您的小提琴几乎就在那里。关键字似乎是系列而this不是工具提示 - 无论如何最好不要依赖 ExtJS 中的 JS 上下文,而且 Sencha 在重构 API 时似乎正在努力,以确保您可以始终如一地期望对相关组件的引用任何回调的第一个参数。

如果您查看 API 中的series-tooltip,它将确认第一个参数是对工具提示的引用,第二个参数是所选记录 - 因此您可以按如下方式更新工具提示:

{
    xtype: 'pie'
    // ...
    tooltip: {
        // ...
        renderer: function(tip, item){
            tip.update(item.get('name') + ': ' + item.get('count'));
        }
    }
}

» 更新小提琴

于 2015-12-06T11:04:49.047 回答
1

看来你从 切换ext-chartssencha-charts

它不再tipsSeries:

ExtJS 4 - http://docs.sencha.com/extjs/4.0.7/#!/api/Ext.chart.series.Series-cfg-tips

ExtJS 6 - http://docs.sencha.com/extjs/6.0/6.0.0-classic/#!/api/Ext.chart.series.Series

试试tooltip属性应该和之前的tips一样

于 2015-12-04T13:02:43.613 回答
1
tooltip: {
  trackMouse: true,
  renderer: function(toolT, storeItem) {
              toolT.setHtml('dummy tooltip');
  }
}

尝试这个。

于 2016-07-18T09:50:29.040 回答