Sencha touch Sencha Touch:MVC应用程序中的动态图表标签

Sencha touch Sencha Touch:MVC应用程序中的动态图表标签,sencha-touch,extjs,sencha-charts,Sencha Touch,Extjs,Sencha Charts,所以我有一个应用程序,我用它来了解更多关于触摸的知识。我根据在网上找到的教程获得了基本框架设置,在那里我可以在应用程序上点击一些东西。我集成了一个sencha触摸线图,效果很好 问题是我想根据从服务器返回的数据填充图表的系列标签,而不是硬编码标签。我的计划是执行一次: Ext.redirect('Chart/Index'); 我会点击那个控制器并加载商店。在存储的onLoad侦听器中,返回数据后,填充系列中的标题数组并呈现图表。我尝试将客户侦听器附加到图表视图,然后从存储侦听器执行它 list

所以我有一个应用程序,我用它来了解更多关于触摸的知识。我根据在网上找到的教程获得了基本框架设置,在那里我可以在应用程序上点击一些东西。我集成了一个sencha触摸线图,效果很好

问题是我想根据从服务器返回的数据填充图表的系列标签,而不是硬编码标签。我的计划是执行一次:

Ext.redirect('Chart/Index');
我会点击那个控制器并加载商店。在存储的onLoad侦听器中,返回数据后,填充系列中的标题数组并呈现图表。我尝试将客户侦听器附加到图表视图,然后从存储侦听器执行它

listeners: {
    load:function(el,records, success){
        App.fireEvent('myListener', records);
    }
 },
这对我不起作用,侦听器是未定义的(我在图表视图中定义了它)。所以这不是我的解决方案

然后我尝试给图表一个id,并执行Ext.query(#myChartName);它返回了一个html元素,而不是可以执行的包装在Ext中的东西

现在是extsj4,我可以在控制器中为存储区放置一个侦听器,并在控制器中定义一个要执行的方法。它可以轻松访问控制器中的任何组件,这将是我解决此问题的方法。但这似乎不是MVC在触摸应用程序中的工作方式。我所看到的例子实际上完全不同。(顺便说一句,这是为什么?)

加载并填充图表中的标签/图例后,在存储中获取数据的最佳解决方案是什么

更新 添加了相关代码的链接。我正在尝试将字符串(标签名称)添加到系列中的标题数组中。注意图表视图&商店

图表视图

控制器

商场


仅供参考,我尝试将侦听器添加到多个事物/对象中,如应用程序、控制器中的视图,但仍然没有成功。

您是否尝试Ext.getCmp(“myChartId”)来访问图表组件?

不,我没有,尽管这在过去的extjs应用程序中起作用。我认为有一个更优雅的解决方案,过去有人告诉我,如果可以的话,可以避免这样做。我希望学习一个更好的解决方案。我想我的意思是作为Ext.query的替代品,Ext.query不返回组件。如果您可以在JSFIDLE或其他平台上共享您的源代码,我们可能会更深入地了解它。谢谢。我用代码重要部分的链接更新了原始问题