1

如何在 Sencha Touch 2 控制器中通过 itemId 引用容器的子项?例如,一个 xtype 为“mypanel”的容器,它包含一个 itemId 为“mybutton”的按钮。在控制器中,我想为按钮分配一个偶数处理程序。我怎么做?

我的应用程序很大并且经常有一个组件的重复,所以我不在我的应用程序的任何地方使用 id,而是使用 itemId。

Ext.define('myapp.controller.Test', {
    extend: 'Ext.app.Controller',

    config: {
        control: {
            myButton: {
                tap: 'showView'
            }
        },
        refs: {
            myPanel: 'mypanel',
            myButton: '?'
        }
    },

    showView: function(){

    }
});
4

2 回答 2

3
refs: {
    mybutton: 'mypanel #mybutton'
}

有关 ComponentQuery 的更多信息,请访问:http: //docs.sencha.com/touch/2-0/#! /api/Ext.ComponentQuery

于 2012-05-11T18:02:57.467 回答
0

当使用itemId而不是id时,您还需要在控制器的 ref 中提及包含带有 itemId 的元素的父级,如下所示:

refs: {
    mybutton: 'xtype_of_panel #itemId_button'
    //where 'itemId_button' is the itemId and 'xtype_of_panel' is the parent that contains the element with the itemId of 'itemId_button'
}
于 2014-05-22T12:27:38.273 回答