Как изменить часть названия заголовка определенного столбца на нижний регистр в ag-grid

#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. Было бы лучше, если бы я мог прочитать это.