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
、多くの言語をサポートしている場合、そこにあるテキストが変更される可能性があるためです。