我正在为使用ExtJS 3.4作为前端的MODx Revolution 2.2.x构建一个额外的功能。我有一个网格,我需要使用“Row Expander”ExtJS插件,但我不知道如何将提供的示例http://dev.sencha.com/deploy/ext-3.4.0/examples/grid/grid-plugins.html(这是第一个示例网格)转换为MODExt语法。
我认为我的主要问题是使用本地商店并且没有像MODx那样使用类模板。
以下是我尝试将插件添加到的基本示例网格:
Example.grid.Artworks = function(config) {
config = config || {};
Ext.applyIf(config,{
id: 'example-grid-artworks'
,url: Example.config.connectorUrl
,baseParams: { action: 'mgr/example/getListArtworks' }
,fields: ['id','name','description','menu']
,paging: true
,pageSize: 5
,remoteSort: true
,autoExpandColumn: 'description'
,columns: [{
header: _('id')
,dataIndex: 'id'
},{
header: _('example.artwork_name')
,dataIndex: 'name'
},{
header: _('example.artwork_desc')
,dataIndex: 'name'
}]
});
Example.grid.Artworks.superclass.constructor.call(this,config)
}
Ext.extend(Example.grid.Artworks,MODx.grid.Grid);
Ext.reg('example-grid-artworks',Example.grid.Artworks);
如何将插件与MODx的connectorUrl和baseParams相结合的任何见解将不胜感激。
提前致谢。
答案 0 :(得分:0)
好的,我设法解决了。如果其他人面临同样的问题,我会留在这里。
Example.grid.Artworks = function(config) {
config = config || {};
// ---- This gets added here ------
this.exp = new Ext.grid.RowExpander({
tpl : new Ext.Template(
'<p>{expandedcontent}</p>'
)
});
Ext.applyIf(config,{
id: 'example-grid-artworks'
,url: Example.config.connectorUrl
,baseParams: { action: 'mgr/example/getListArtworks' }
// added the expanded content field here.
,fields: ['id','name','description','expandedcontent','menu']
,paging: true
,pageSize: 5
,remoteSort: true
,autoExpandColumn: 'description'
,plugins: [this.exp] // <---- add this here
,columns: [this.exp,{ // <----- add this here
header: _('id')
,dataIndex: 'id'
},{
header: _('example.artwork_name')
,dataIndex: 'name'
},{
header: _('example.artwork_desc')
,dataIndex: 'name'
}]
});
Example.grid.Artworks.superclass.constructor.call(this,config)
}
Ext.extend(Example.grid.Artworks,MODx.grid.Grid);
Ext.reg('example-grid-artworks',Example.grid.Artworks);