【发布时间】:2013-01-03 04:31:22
【问题描述】:
我正在尝试使用控制器参考在 Sencha Touch 中的列表项中使用项目披露。但是该事件似乎永远不会在控制器内部触发/接收。我见过的所有示例都有使用侦听器的列表项,但我认为这不是非常 MVC,所以我试图这样做(他们有什么理由使用侦听器而不是控制器吗?)
在我看来,列表是 EnquiryIndex 视图中的一个项目。
当我在控制台窗口中执行此操作时,它会正确返回列表,因此我知道 ref 工作正常:
Ext.ComponentQuery.query("enquiryindexview list")[0]
见下例:
Ext.define('MyApp.controller.EnquiryIndex', {
extend: 'Ext.app.Controller',
requires: [
],
config: {
refs: {
enquiryIndexViewRef: 'enquiryindexview list'
},
control: {
'enquiryIndexViewRef': {
disclose: 'onDiscloseEnquiryIndex'
}
}
},
onDiscloseEnquiryIndex: function (rec) {
// never gets here!
}
});
【问题讨论】:
-
改用“#enquiryindexview list”怎么样
-
你让它工作了吗?
-
我尝试改用“itemtap”,这似乎有效。是否有任何理由为什么公开不起作用?两者有什么区别?
-
您列表的配置是否包括
onItemDisclosure : true? -
另外值得注意的是,当任何监听器返回false时,动作(disclose)被取消。
标签: sencha-touch sencha-touch-2