#angular #typescript #ag-grid
#angular #typescript #ag-grid
Вопрос:
Я попробовал использовать headerClass, но он преобразовал все имя заголовка в нижний регистр, но только часть его должна быть строчной.
Мой код:
{ поле: «id», имя заголовка: ‘RAJ (0P)’ }
Я хочу, чтобы только часть 0P стала строчной.
Любые предложения помогут.
Обновление : я видел, что один класс применяется к внешнему компоненту, который преобразует текст в верхний регистр. Итак, чтобы перезаписать это, я думаю, мне нужно передать пользовательский HTML в заголовок столбца и применить класс, который преобразует его в нижний регистр.
Итак, как передать пользовательский HTML в заголовок столбца?
Ответ №1:
Вы можете использовать headerValueGetter
функцию обратного вызова для форматирования текста заголовка так, как вы хотите. Вам нужно добавить это в определение столбца.
Для вашей конкретной проблемы вы можете использовать следующее определение столбца (извиняюсь, если не переработано, написал его быстро):
{
field: "RAJ(0P)",
headerValueGetter: function(params) {
let headerName = params.colDef.field;
let textWithinBracket = headerName.substring(headerName.indexOf('(') 1, headerName.indexOf(')'));
let lcTextWithinBracket = '(' textWithinBracket.toLowerCase() ')';
let finalHeaderName = headerName.replace(/(.*?)/, lcTextWithinBracket)
return finalHeaderName;
}
}
Комментарии:
1. @RajatAggarwal Мой ответ все еще применим. В вашем обновлении задается новый вопрос.
2. @RajatAggarwal, вы пробовали ответ Викваса. Для меня выглядит хорошо
Ответ №2:
вы пробовали использовать угловые каналы?
в вашем HTML-шаблоне, когда вы показываете значение, скажем, в span
, вы можете сделать следующее, чтобы ваши значения были заглавными
<span>{{ value_expression | titlecase }}</span>
Ссылка для ссылки находится здесь TitleCasePipe
Комментарии:
1. Они явно сказали, что хотят, чтобы часть имени была в верхнем регистре
2. О, я думал, что, например, «RAJ» должен стать «Raj», и это именно то, что делает канал titlecase. Было бы лучше, если бы я мог прочитать это.