2016-10-14 1 views
4

с трубами, какКоличество форматирования как-вы-типа в поле ввода в Angular2 с двойным связывания

<input.... 
    [ngModel]="whatever | myCurrencyPipe" 
    (ngModelChange)="whatever = $event" 
    type="text" 
    name="myCurreny" 
    ... 

можно форматировать существующие значения. Вы редко хотите переписать значение, у вас есть проблемы. И с вышеприведенным решением двойное связывание было отменено.

Есть много jQuery-Libraries, но я ищу собственные угловые решения.

Может кто-нибудь мне помочь?

+0

В чем заключается ваш вопрос, можете ли вы подробно рассказать об этом? Благодаря! – Roy

+0

что-то вроде этого: https://github.com/customd/jquery-number для Angular2 – Lonely

+0

Вы просмотрели [текст-маска] (https://github.com/text-mask/text-mask/tree/master/angular2 # ридми)? Он может быть отформатирован (https://github.com/text-mask/text-mask/blob/master/componentDocumentation.md#mask), чтобы замаскировать значение валют. – Roy

ответ

1
  1. Расширение NgModel. Перезаписать функцию viewToModelUpdate (значение), вызываемую после каждого изменения ввода и установки значения модели.
  2. Replace NgModel для вашей реализации (провайдеры [] в модуле)
  3. чтения регулярных выражений или фильтра или форматировщиком из указанного атрибута, непосредственно на входе, как: < входной фильтр = «валюта» />

Рабочий пример вы можете найти здесь: http://stacktrase.com/2017/07/14/angularjs4-restrict-input-text-by-extending-ngmodel/

+0

роскошный! ....... – Lonely

Смежные вопросы