【发布时间】:2011-12-04 14:40:33
【问题描述】:
我正在尝试使用 sencha touch 和 phonegap 设置原生风格的应用程序。我正在尝试将来自外部 XML 提要的数据提取到模型中。
在我的 模型 (Event.js) 我有这个:
Ext.regModel('Event', {
fields: [
{name: 'title', type: 'string'}
]
});
在我的商店 (eventsstore.js):
ToolbarDemo.eventstore = new Ext.data.Store({
model: 'Event',
sorters: 'title',
getGroupString : function(record) {
return record.get('title')[0];
},
proxy: {
type: 'ajax',
url: 'http://the-url-to-the-file.xml',
reader: {
type: 'xml',
root: 'events',
record: 'event'
}
},
autoLoad: true
});
并在视图中(作为列表尝试):
ToolbarDemo.views.Eventscard = Ext.extend(Ext.List, {
title: "Events",
iconCls: "search",
store: ToolbarDemo.eventstore,
itemTpl: '{title}',
grouped: true,
indexBar: true,
cardSwitchAnimation: 'slide'
});
Ext.reg('eventscard', ToolbarDemo.views.Eventscard);
并尝试作为一个面板:
ToolbarDemo.views.Eventscard = Ext.extend(Ext.Panel, {
title: "Events",
iconCls: "search",
dockedItems: [{
xtype: 'toolbar',
title: 'Events'
}],
layout: 'fit',
items: [{
xtype: 'list',
store: ToolbarDemo.eventstore,
itemTpl: '{title}',
grouped: true
}],
//This was an experiment, safe to leave out?
initComponent: function() {
//ToolbarDemo.eventstore.load();
ToolbarDemo.views.Eventscard.superclass.initComponent.apply(this, arguments);
}
});
Ext.reg('eventscard', ToolbarDemo.views.Eventscard);
现在,当我导航到该卡片视图时,会显示加载叠加层/微调器,但仅此而已,项目列表不会出现。关于我做错了什么的任何想法?
【问题讨论】:
-
请参阅stackoverflow.com/questions/7676959/…,了解我在解决此类问题时提供的一些建议。您需要对 Javascript 调试器友好。 :-)
-
是的,我看到了,但我似乎找不到任何地方:(我真的不明白我应该做什么
标签: javascript xml cordova xml-parsing sencha-touch