【发布时间】:2011-09-24 23:56:41
【问题描述】:
所以我有一个应用程序可以用来了解有关触控的更多信息。我根据我在网上找到的教程获得了基本的框架设置,我可以在应用程序中点击一些东西。我集成了一个煎茶触摸折线图,效果很好。
问题是我想根据从服务器返回的数据填充图表的系列标签,而不是对标签进行硬编码。我的计划是执行一次:
Ext.redirect('Chart/Index');
我会点击那个控制器并加载商店。在商店的 onLoad 侦听器中,一旦返回数据,填充系列中的标题数组并呈现图表。我尝试将客户侦听器附加到图表视图,然后从商店侦听器执行它。
listeners: {
load:function(el,records, success){
App.fireEvent('myListener', records);
}
},
这对我不起作用,侦听器未定义(我确实在图表视图中定义了它)。所以这不是我的解决方案。
然后我尝试给图表一个 id,然后执行 Ext.query(#myChartName);这返回了一个 html 元素,而不是包装在 Ext 中可以执行的东西。
现在是 extsj4,我可以在控制器中放置一个 store 的监听器,并在控制器中定义一个方法来执行。它可以轻松访问控制器中的任何组件,这就是我解决此问题的方法。但这似乎不是 MVC 在触控应用程序中的工作方式。事实上,我所看到的示例的布局截然不同。 (为什么会这样?)
在加载后在我的商店中获取数据并在我的图表中填充标签/图例时,我最好的解决方案是什么?
更新 添加了相关代码的链接。我正在尝试将字符串(标签名称)添加到系列中的标题数组中。注意图表视图和商店。
图表视图
控制器
商店
仅供参考,我尝试将侦听器添加到多个事物/对象,例如应用程序、视图、控制器内,但仍然没有运气。
【问题讨论】:
标签: sencha-touch extjs sencha-charts