1

このようなグリッドがたくさんあります。別の js ファイルからロードされるベース グリッドと列を作成したいと考えています。Extjs4でそれは可能ですか?

Ext.define('App.view.MyGrid',
{
    extend : 'Ext.grid.Panel',
    alias : 'widget.resultsList',
    id : 'myGrid',
    header : false,
    columnLines : true,
    initComponent : function() {
    this.store = 'MyStore';
    this.columns = [
            // Can this loaded from a another file
    ]
  }
});
4

2 に答える 2

3

これが最善の方法かどうかはわかりませんが、mixin を使用してそれを行うことができます。

Ext.define('App.mixin.MyGridColumnsMixin',{
  getColumns : function() { 
    return [{}]; //your columns here
  }
});

Ext.define('App.view.MyGrid',{
  requires : ['App.mixin.MyGridColumnsMixin'],
  mixins : ['App.mixin.MyGridColumnsMixin'],
  initComponent : function() {
    var me = this,
        columns = me.getColumns(); //method of the mixin
    //applying the list of columns in this component
    Ext.applyIf(me, {
      columns: columns
    });
    me.callParent(arguments);
  }

});
于 2013-10-07T18:35:42.633 に答える