我有一段看起来像这样的代码:
var myChart = this.items[i].items[j].down().down();
myChart.series.items[0].setValue(30);
myChart定义明确。当我在萤火虫中侦察它时,它包含图表。
我明白规格不是一种图表而是一种系列,所以我真的不明白为什么我得到错误“setValue不是函数”!
如果有人可以提供帮助,那将是非常酷的,因为我对此非常恼火。
这是我的观点定义:
Ext.define('MyApp.view.portlet.GaugePortlet', {
extend: 'Ext.panel.Panel',
alias: 'widget.gaugeportlet',
height: 300,
requires: [
'Ext.data.JsonStore',
'Ext.chart.theme.Base',
'Ext.chart.series.Series',
'Ext.chart.series.Line',
'Ext.chart.axis.Numeric',
'Ext.chart.*',
'Ext.chart.axis.Gauge',
'Ext.chart.series.*'],
initComponent: function () {
Ext.apply(this, {
layout: 'fit',
items: {
xtype: 'chart',
animate: {
easing: 'elasticIn',
duration: 1000
},
legend: {
position: 'bottom'
},
axes: [{
type: 'gauge',
position: 'gauge',
minimum: 0,
maximum: 2,
steps: 10
}],
series: [{
type: 'gauge',
donut: false,
colorSet: ['#F49D10', '#ddd']
}]
}
});
this.callParent(arguments);
}
});
我现在不想使用动态商店,我只想测试设置硬编码值。
由于
答案 0 :(得分:0)
我终于通过在我视图的afterLayout事件中使用setValue来修复此错误。
所以我的代码现在看起来像这样:
//view declaration...
listeners:
{
afterlayout: function ()
{
//use setValue here.
}
}
最后,我面临另一个问题......我在萤火虫中没有更多错误,但在视觉上,我的仪表图表没有显示任何值。它渲染得很好,但它是空的....我尝试使用doLayout()或doComponentLayout()方法更新它,但仍然没有任何反应。