我有一个网格,它有很多几乎相同的列,它们的名称相同,但最后的数字不同。它们使用相同的渲染器函数,但参数值不同,等等……
这些列定义相对较长(5-10 行)。有没有办法生成它们抛出一个循环或什么?这将使我的代码更好,更紧凑。
提前致谢!
我有一个网格,它有很多几乎相同的列,它们的名称相同,但最后的数字不同。它们使用相同的渲染器函数,但参数值不同,等等……
这些列定义相对较长(5-10 行)。有没有办法生成它们抛出一个循环或什么?这将使我的代码更好,更紧凑。
提前致谢!
是的你可以。您还可以在服务器上生成列配置。
在这里你可以看到如何做到这一点:
Ext.define('mynamespace.Grid', {
extend: 'Ext.grid.Panel'
// ... your grid configuration
initComponent: function() {
var cm = [];
Ext.each(columnsArray, function(rec) {
var col = {
text: rec.name,
dataIndex: rec.dataIndex
// ... renderer and so on
};
cm.push(col);
}, this);
this.columns = {
items: cm
};
this.callParent(arguments);
}
});