extjsデザイナー1.2で作業しています。クリックするとウィンドウを開くパネル上のボタンがあります。ウィンドウには、jsファイルで次のようにレンダラーを適用したグリッドがあります。問題は、ウィンドウを初めて開いたときにレンダラーがうまく機能することですが、ウィンドウを閉じて再度開くと、効果が消えます。
Ext.define('MyApp.view.TestWindow', {
extend: 'MyApp.view.ui.TestWindow',
initComponent: function() {
var me = this;
me.callParent(arguments);
}
});
================================================== ========================
Ext.define('MyApp.view.TestPanel', {
extend: 'MyApp.view.ui.TestPanel',
initComponent: function() {
var me = this;
me.callParent(arguments);
Ext.data.StoreManager.lookup('Test').load();
me.down('button[id=testbutton]').on('click',me.onTestBtnClick,me);
},
onTestBtnClick: function(){
var win = new Ext.create('MyApp.view.TestWindow');
win.show();
win.down('#testgrid').columns[0].renderer=function(val){
return '<span style="color:red;">' + val + '</span>';
}
}
});
観察: ui.jsでレンダラーを使用する場合、つまりデザイナーからプロジェクトをエクスポートすることによって生成されたファイルを使用する場合、上記の問題に直面することはありません。この問題の解決策は何ですか?