Мне нужно отформатировать число следующим образом:
10,00
1.000,67
1,78
(целая часть может иметь неопределенное количество цифр, а десятичная часть должна быть равна 2)
Такпредположим, чтобы сделать это html
<input type="number" class="form-control" [ngModel]="money| toNumber " name="money" required (ngModelChange)="money= $event"
Я использую этот канал:
@Pipe({
name: 'toNumber'
})
export class ToNumberPipe implements PipeTransform {
transform(value: number | string, locale?: string): string {
return new Intl.NumberFormat(locale, {
minimumFractionDigits: 2
}).format(Number(value));
}
}
Этот канал я только что использовал в другой части моего кода, и он форматирует число, как я хочу, нов этом случае, когда я помещаю эту трубу в свой HTML-код, поле номера типа ввода будет пустым, я получаю следующее сообщение:
Указанное значение «4,00» не является допустимым числом.Значение должно соответствовать следующему регулярному выражению: -? (\ D + | \ d +. \ D + |. \ D +) ([eE] [- +]? \ D +)?