添付されているのは私のコントローラーファイルです..基本的にビューを切り替えたいです..2つのボタンがあるコンテナーでパネルを追加および削除します..ホームおよび人気のあるボタンの方法でExt.createを何度も使用していますアプリケーションbecoziamがビューを破棄しないiam追加および削除..私の主な質問は、var homepanel = Ext.createを1回だけ作成し、必要なときにその変数を再利用できるように、この状況でグローバル変数を作成するにはどうすればよいかです。 mainContainerから削除または追加するには、これに関する深刻なガイダンスが必要です。ドキュメント全体を検索しましたが、それについての手がかりはありません。
Ext.define('app.controller.MainController', {
extend: 'Ext.app.Controller',
config: {
refs: {
homeBtn: '#homeBtn',
popularBtn: '#popularBtn',
homePanel: '#homePanel',
mainContainer: '#mainContainer'
},
control: {
homeBtn:{
tap: 'homeBtnAction'
},
popularBtn:{
tap: 'popularBtnAction'
}
}
},
launch: function(app) {
this.callParent(arguments);
console.log("main launched");
var mainCont = this.getMainContainer();
var homepanel = Ext.create('app.view.Home.HomePanel');
mainCont.add(homepanel);
console.log("homePanelAdded");
},
homeBtnAction: function(){
console.log("home page called");
var mainCont = this.getMainContainer();
var homepanel = Ext.create('app.view.Home.HomePanel');
var popularpanel = Ext.create('app.view.Popular.PopularPanel');
mainCont.remove(popularpanel);
mainCont.add(homepanel);
},
popularBtnAction: function(){
console.log("popular page called");
var mainCont = this.getMainContainer();
var homepanel = Ext.create('app.view.Home.HomePanel');
var popularpanel = Ext.create('app.view.Popular.PopularPanel');
mainCont.remove(homepanel);
mainCont.add(popularpanel);
}
});
注: IamはExt.defineを使用してビューを作成し、MVC構造を使用しています。