Мне нужно реализовать разделитель тысяч для входа в приложение Ionic.Мне нужно добиться этого, когда пользователь их набирает.Я пришел со следующей реализацией:
В файле Ts:
public amount:string; // model
format(){
this.amount=this.separator(this.amount)
}
separator(amount)
{
var num_parts = amount.split(".");
num_parts[0] = num_parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ",");
return num_parts.join(".");
}
В HTML:
<ion-input [(ngModel)]="amount" (keyup)="format()" placeholder="Text Input"></ion-input>
Работает нормально, пока число цифр не останется 4 (в числовой части). Плохо, когда у меня больше 4 цифр.Так как он вызывается для 'keyup' во втором проходе, он добавляет еще один ',' после второй цифры, например:
1,2,345
И это продолжается: 1,2,3,455
Как я могу реализовать это правильно, то есть добавив разделитель тысяч по мере их ввода пользователем.Спасибо за внимание к этому.