Кажется, это должно быть так просто, но я просто не могу этого сделать (мне даже не нужно, чтобы это выполнялось динамически ). Например, предположим, что у меня есть простая сетка из двух столбцов, например:
columns : [
{header: 'USER', dataIndex: 'firstName', width:70, cls: 'red'},
{header: 'CATEGORY', dataIndex: 'category', width:100}
]
Атрибут cls: 'red'
влияет только на заголовок, а не на фактический столбец. В другом месте я видел, что мне следует использовать собственный рендерер (возможно), но если я попробую что-то вроде:
{header: 'USER', dataIndex: 'firstName', width:70,
renderer: function(value) {
this.addCls('red');
return value;
}
}
, у меня все равно будет скучный белый фон. Я также видел людей, использующих такое определение функции рендеринга: function (value, metadata, record, rowIndex, colIndex, store)
, но когда я использовал alert ()
для проверки входные параметры я получаю undefined
для всего, кроме значения
, что заставляет меня думать, что, возможно, это было действительным только для версий до ExtJs 4.
Я также попытался вернуть что-то вроде ] '' + value + ''
в моей функции визуализации, но это только выделил текст, а не изменил весь фон столбца.
Я делаю не хочу переопределять классы Ext css по умолчанию, потому что я хочу применить цвета фона к определенной сетке в приложении, а не ко всем из них.
Кроме того, все столбцы рассматриваемой сетки могут иметь разные цвета (примечание что в примере я добавил класс только к первому столбцу).
Предположим, что красный
определен как .red. {background: # FF0000;}
в моем файле css.