我正试图获得这样的商店价值:
itemtap : function(list, index, target, record) {
Ext.getStore("nameStore").load();
console.dir("TEST->"+record.get('id'));
console.dir("TEST->"+record.get('address'));
}
这时我无法获得id,当itemtap时。 我也试试这个:
var store= Ext.getStore('nameStore');
console.dir("TEST->"+store.get('id'));
console.dir("TEST->"+store.get('address'));
但无法获取数据。为什么这样?
和这两种商店价值访问有什么区别?
我在div中添加onclick,itemtap工作正常,但在Iphone中它无法正常工作?为什么这个?在使用android Iphone和其他设备的sencha中是否存在任何替代方案。如何在itemptap中获取值,从显示在商店中的div中显示。
编辑:
itemtap :function(list, index, target, record) {
console.log("Clicked---"+record.get('cat_id'));
}
实际上,我没有得到上面的代码。
我试试这个,并获得价值
console.log("Clicked--"+record.data.data[index].cat_id);
始终获取第一个值,因为索引值始终为0,每个类别都会被点击。 所以,我想在这里获取分类类别的索引。
工作正常,如果我这样做:
{
xtype: 'list',
itemId: 'catList',
scrollable: false,
data: [
{ name: 'A', cat_id: 1},
{ name: 'B', cat_id: 2},
{ name: 'C', cat_id: 3},
{ name: 'D', cat_id: 4},
{ name: 'E', cat_id: 5},
],
loadingText: "Loading Words...",
emptyText: '<div>{message}</div>',
autoLoad:true,
itemTpl:[
'<tpl for=".">',
'<span >{name}</span> ',
'</tpl>',
]
},
答案 0 :(得分:1)
为什么要在 itemTap 回调中“重装”商店?它应该已经加载,而不必再次加载()。
即使你想更新商店,你也应该在执行record.get()之前等待load()完成。请记住 load()是异步。
第二个块永远不会起作用,因为 get()是一个记录方法,你将它重新执行到商店。
itemtap : function(list, index, target, record) {
console.dir("TEST->" + record.get('id'));
console.dir("TEST->" + record.get('address'));
}