Без трубы
Вот ваше простое решение с TitleCase
, которое вы можете использовать напрямую, как это, вам не нужно вводить дополнительный код angular, уже дайте это Характеристики
HTML
<p>
{{name | titlecase}} <!-- this is titlecase by default -->
</p>
TS
name = 'Working with Pipe';
С трубой
Вы можете проверить в input
поле также, как это
HTML
<input type="text" id="firstName" name="name"
[ngModel]="name | titleCase"
(ngModelChange)="name=$event"
#firstName="ngModel">
TS
import {Pipe, PipeTransform} from '@angular/core';
@Pipe({name: 'titleCase'})
export class TitleCasePipe implements PipeTransform {
public transform(input:string): string{
console.log(input);
if (!input) {
return '';
} else {
return input.replace(/\b\w/g, first => first.toLocaleUpperCase())
}
}
}
и не забудьте добавить declaration
вот так
declarations: [ TitleCasePipe ],
Вот мой стек Blitz вы можете проверить здесь