2 つのタブを持つタブ コントロールを含むビューがあります。各タブのエイリアスを次の形式で定義しました。
alias: 'widget.contenttab'
コントローラーで「contenttab」にアクセスしようとしていますが、定義されていないと表示されます。
contenttab is not defined
コントローラーの選択ハンドラーでタブのhtmlコンテンツを設定しようとしています:
Ext.define('BP.controller.Induction', {
extend: 'Ext.app.Controller',
views: [
'induction.Binder',
'induction.LeftPage',
'induction.RightPage',
],
stores: [
'Sections',
'Categories',
'Tasks'
],
models: [
'Section',
'Category',
'Task'
],
init: function() {
this.control({
'grid[xtype=categorygrid]': {
itemclick: this.onItemClick
}
});
console.log('Initialized Induction!');
},
onItemClick: function(e, d) {
console.log(d.data.category_id);
this.getCategoriesStore().load({params:{'id':d.data.category_id}}, {
success: function(category) {
console.log("Category: " + category.get('name'));
},
error: function(e) {
console.log(e);
}
});
contenttab.html = 'test'; // produces error
}
});
「contenttab」は、RightPage ビュー内にあります。エラーを生成する行は、最終的に成功コールバック関数内に存在する必要があります-しかし、これは起動されていません(Extjsストアロード成功ハンドラーが起動されないという問題について、ここで別の質問を作成しました
ご指導ありがとうございます。