首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Sencha触摸错误:对象没有方法getShowInLegend

Sencha触摸错误:对象没有方法getShowInLegend
EN

Stack Overflow用户
提问于 2014-03-27 10:12:53
回答 1查看 267关注 0票数 0

Sencha触摸2.3.1 Cmd: 4.0.X.X

我的Sencha Touch Charts应用程序试图绘制图表时会抛出此错误:

Uncaught :对象对象没有方法'getShowInLegend‘AbstractChart.js?_dc=1395914109534:649 Ext.define.refreshLegendStore AbstractChart.js?_dc=1395914109534:649 Ext.define.updateSeries AbstractChart.js?_dc=1395914109534:877 setter sencha-touch all-调试器all:5491 Base.implement.initConfig感应器-全触式调试all:4920 Ext.define.constructor感应器-全触式调试all:22651 Base.implement.callParent感应器-全触式调试all:4656 Ext.define.constructor感应器-全触式调试all:32375 Base.implement.callSuper感应器-全触式调试all:4735 Ext.define.constructor Component.js?_dc=1395914109519:100 Base.implement.callSuper感应器-全触式调试all:4735 Ext.define.constructor AbstractChart.js?_dc=1395914109534:626 类感应器-全触式调试all:5208 (匿名功能)VM14212 14212:3 Ext.ClassManager.instantiate感应器-全触式调试all:6936 Ext.ClassManager.instantiateByAlias感应器-全触式调试all:6848 Ext.apply.factory感应器-全触式调试all:9980 Ext.define.factoryItem感应器-全触式调试all:32637 Ext.define.add感应器-全触式调试all:32714 Ext.define.applyItems感应器-全触式调试all:32538 setter sencha-touch all-调试器all:5482 (匿名函数)sencha-触摸-所有-调试器:5516 Ext.define.applyActiveItem感应器-全触式调试all:33208 (匿名函数)sencha-touch-all-调试器all:16565 Base.implement.initConfig感应器-全触式调试all:4920 Ext.define.constructor感应器-全触式调试all:22651 Base.implement.callParent感应器-全触式调试all:4656 Ext.define.constructor感应器-全触式调试all:32375 类感应器-全触式调试all:5208 (匿名功能)VM14212 14212:3 Ext.ClassManager.instantiate感应器-全触式调试all:6936 Ext.ClassManager.instantiateByAlias感应器-全触式调试all:6848 Ext.apply.factory感应器-全触式调试all:9980 Ext.define.factoryItemWithDefaults感应器-全触式调试all:32683 Ext.define.add感应器-全触式调试all:32707 Ext.define.applyItems感应器-全触式调试all:32538 setter sencha-touch all-调试器all:5482 (匿名函数)sencha-触摸-所有-调试器:5516 Ext.define.applyActiveItem感应器-全触式调试all:33208 Base.implement.callParent感应器-全触式调试all:4656 Ext.define.applyActiveItem感应器-全触式调试all:46269 (匿名函数)sencha-touch-all-调试器all:16565 Base.implement.initConfig感应器-全触式调试all:4920 Ext.define.constructor感应器-全触式调试all:22651 Base.implement.callParent感应器-全触式调试all:4656 Ext.define.constructor感应器-全触式调试all:32375 类感应器-全触式调试all:5208 (匿名功能)VM14212 14212:3 Ext.ClassManager.instantiate感应器-全触式调试all:6936 Ext.ClassManager.instantiateByAlias感应器-全触式调试all:6848 Ext.apply.factory感应器-全触式调试all:9980 Ext.define.factoryItem感应器-全触式调试all:32637 Ext.define.add感应器-全触式调试all:32714 doCharts doCharts.js:394 Ext.Ajax.request.success standardFunctions.js:166 Ext.apply.callback感应器-全触式调试all:10268 Ext.define.onComplete感应器-全触式调试all:35765 Ext.define.onStateChange感应器-全触式调试all:35709 (匿名函数)

这些图表呈现到此视图中:

代码语言:javascript
复制
Ext.define('dashboards.view.Main', {
    extend: 'Ext.Panel',
    requires: [
        'Ext.chart.*',
        'Ext.draw.sprite.Sector',
        'Ext.chart.Chart', 
        'Ext.chart.series.Column',
        'Ext.chart.AbstractChart',
        'Ext.chart.SpaceFillingChart',
        'Ext.dataview.component.Container',
        'Ext.chart.series.Series',
        'Ext.chart.series.Gauge',
        'Ext.carousel.Indicator',
        'Ext.carousel.Infinite',
        'Ext.carousel.Item',
        'Ext.carousel.Carousel',
        'Ext.fx.easing.EaseOut',
        'Ext.util.TranslatableGroup',
        'Ext.chart.series.Cartesian',
        'Ext.chart.series.Area',
        'Ext.chart.Label',
        'Ext.chart.Highlight',
        'Ext.chart.Callout',
        'Ext.chart.Transformable',
        'Ext.chart.series.ItemEvents',
        'Ext.chart.theme.Style',
        'Ext.draw.Color', 
        'Ext.chart.series.Bar',
        'Ext.chart.series.Column',
        'Ext.chart.axis.Gauge',
        'Ext.chart.theme.Base',
        'Ext.chart.theme.Base',
        'Ext.chart.theme.TitleStyle',
        'Ext.chart.theme.GridStyle',
        'Ext.chart.Toolbar',
        'Ext.chart.legend.View',
        'Ext.chart.Legend',
        'Ext.chart.axis.Numeric',
        'Ext.chart.axis.Category',
        'Ext.draw.Surface',
        'Ext.draw.Draw',
        'Ext.draw.Matrix',
        'Ext.draw.engine.Canvas',
        'Ext.draw.CompositeSprite',
        'Ext.fx.Frame',
        'Ext.draw.Sprite',
        'Ext.fx.Sprite',
        'Ext.draw.sprite.Sector',
        'Ext.draw.sprite.Rect',
        'Ext.chart.interactions.Abstract',
        'Ext.chart.axis.Axis',
        'Ext.chart.axis.Abstract',
        'Ext.util.SizeMonitor',
        'Ext.chart.grid.HorizontalGrid','Ext.chart.grid.VerticalGrid','Ext.draw.fx.TimingFunctions','Ext.Container','Ext.TitleBar','Ext.data.Store','Ext.data.StoreManager'
        ],
    alias: 'widget.mainview',
    id: 'mainpage',
    getSlideLeftTransition: function () {
        return { type: 'slide', direction: 'left' };
    },

    getSlideRightTransition: function () {
        return { type: 'slide', direction: 'right' };
    },
    config: {
        layout: {
            type: 'fit'
        },
        items: [
            {
                 xtype : 'container',
                 flex: 1,
                 id: 'introtext',
                 html: '<p>Please select from your dashboards above</p>'
            },
            {
                 xtype : 'selectfield',
                 store : companiesStore2,
                 name : 'companies',
                 queryMode: 'local',
                 id : 'companiesSelect',
                    itemId: 'companySelect',
                    valueField : 'companyname',
                    displayField : 'companyname',
                    style: 'overflow:hidden',
                    listeners: {
                        change: function(field,value) {
                            getStats(value)
                        }
                    }   
              },

              {
                    xtype: 'toolbar',
                    docked: 'bottom',
                    id: 'bumtoolbar',
                    items: []
                },
                {
                layout: {
                    pack: 'end'
                },
                xtype: 'titlebar',
                id: 'titlebartop',
                title: 'axisfirst Dashboards',

                docked: 'top',
                items: [
                    {
                        xtype: 'button',
                        text: 'Log Off',
                        itemId: 'logOffButton2',
                        id: 'logOffButton2',
                        align: 'right',
                        cls: 'logoffBtn',
                        scope: this,
                        listeners: {                                
                            tap: function() {
                                Ext.Msg.confirm("Log out", "Are you sure you want to logout?", function(btn) {
                                if (btn === 'yes') {
                                    logout();
                                    //Ext.Viewport.setActiveItem({ xtype: loginview });

                                  } else {
                                    return false;
                                  }
                                }, this);

                            }                           
                        }
                    }
                ]
            }]
    }


});

图表是使用一个单独的.js文件添加的。代码如下所示:

代码语言:javascript
复制
var chartgx = {
                                    cls: 'thegauge',
                                    itemId: 'gauge'+tt2,
                                    xtype: 'chart',
                                    shadow: true,
                                    store: gaugeStore,
                                    width : 'auto',
                                    animate: true,
                                    insetPadding: 50,
                                    axes: [{
                                        type: 'gauge',
                                        position: 'gauge',
                                        minimum: 0,
                                        maximum: gaugemax,
                                        steps: 10,
                                        margin: 10,
                                        direction: 'right'
                                    }],
                                    series: [{
                                        showInLegend: false,
                                        type: 'gauge',
                                        position: 'gauge',
                                        minimum: 0,
                                        maximum: gaugemax,
                                        steps: 10,
                                        margin: 10,
                                        angleField: 'CurrentValue',
                                        donut: 30,
                                        colorSet:[gaugeColor,'#e1e1e1']

                                    }]

                                };


                                var gaugeText = '<p class="gaugetitle">' + gaugeTitle + ': ' + currentValue + '</p>';
                                var chartgx2 = Ext.Container({
                                        xtype : 'container',
                                        flex: 1,
                                        layout: 'fit',
                                        cls: 'gaugeContainer',
                                        needle: true,
                                        items: chartgx, 
                                        html: gaugeText
                                   });
                                  if (gaugeTitle !== '') {
                                      allcharts.push(chartgx2);
                                  }

我看过AbstractChart.js,当然,它正在调用这个函数。我搜索了我的整个目录(inc、/app和/src),但是找不到函数。

我已经更新了“Ext.chart.AbstractChart”所需和扩展的所有文件,但仍然会得到错误。

请有人告诉我函数属于哪个类,这样我就可以从docs.sencha.com更新,或者告诉我如何纠正这个错误。

EN

回答 1

Stack Overflow用户

发布于 2014-03-27 18:12:07

关于您的问题,您的“系列”是在AbstractChart上定义的。您的图表扩展了AbstractChart,因此您不需要添加它的要求(AbstractChart)。该方法getSeries是由感测触摸核产生的.扩展Ext.base的对象的所有字段都有getMyField和setMyField。

错误发生在函数上。当它尝试getShowInLegend的时候。但是系列赛的每一项都有getShowInLegend方法,您可以确认在showInLegend: true,行上查找这里

正如我在第一行中所说的,所有扩展Ext.base的对象都有getMyField方法,图文集系列系列扩展到Ext.base。

有了这些信息,问题可能是在建立图表时产生了一些误解。但是我们没有关于您的图表是如何创建的信息。你用过Ext.create吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22684383

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档