好的,所以这里花了一些时间,我希望我找到的解决方案很有用。不过,我希望更多的方法可以做到这一点,有人可以指出它。
我试图找出如何从转盘中的项目获取委托点击事件的来源,而不是在Sencha Touch 2中使用内置可通行参数的列表或其他类似结构;默认情况下,事件的范围是具有侦听器的容器。通过该函数传递的所有参数都与鼠标单击事件有关,而不是与源有关。请参阅下面的解决方案。
答案 0 :(得分:2)
另一种方式
tap: function(list, index, target, record, e, eOpts){
var elm = Ext.get(e.target);
Ext.getCmp(elm.dom.id);
}
答案 1 :(得分:0)
就像我说的,这是一个hacky解决方案,如果有更好的东西,那就太棒了,请在这里发布。无论如何,这是我使用的委托监听器代码:
{
element: 'element',
delegate: '.completed_button',
event: 'tap',
fn: function(element){
var source_id = element.getTarget().id;
Ext.getCmp(source_id);
}
}
换句话说,传递click事件参数,获取其目标,并获取该目标的id。我通过窥探console.log(element)
向我展示的内容找到了这一点。