0

SenchaCmd 6 が a を実行するときに生成するストック アプリケーションをいじろうとしていてsencha app generate、サイド メニュー タブにクリック イベントを追加しています。

Ext.define('UserManager.view.main.Main', {
    extend: 'Ext.tab.Panel',
    xtype: 'app-main',
    ...
    listeners: { 
    render: 'onMenuRender'
    }
});

コントローラーの onMenuRender メソッド:

onMenuRender: function (tabPanel, a) {
    tabPanel.items.each(function(item) {
        item.tab.on('click', this.onTabItemClick);
    }, this);
}

onTabItemClick:

onTabItemClick: function(tabItem, a) {
    alert(tabItem.itemId);
}

問題はitemId、ビュー構成で値を割り当てているメンバー変数がコントローラーで一度使用できず、常に使用できることです。undefined

タブの例を次に示します。

{
    title: 'Users',
    itemId: 'usersTab',
    iconCls: 'fa-user',
    items: [{
        xtype: 'mainlist'
    }]
}

何が欠けていますか?idどの項目がクリックされたかを区別するために、これはフレームワークによって自動生成されるため、使用したくありません。またtitle、多くの言語をサポートしている場合、そこにあるテキストが変更される可能性があるためです。

4

1 に答える 1