2016-10-14 64 views
4

隨着管等數字格式化爲你型在Angular2輸入域與雙結合

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

可以格式化的現有值。幾乎你想覆蓋價值,你有問題。通過上面的解決方案,雙重綁定已被廢除。

有很多jQuery-Libraries但我正在尋找原生的angular2解決方案。

有人可以幫助我嗎?

+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(value),在每次輸入更改並設置模型值後調用。
  2. 替換NgModel到您的實施(供應商[]在模塊)
  3. 讀取的regexp或過濾器或格式化器從指定的屬性,直接在輸入這樣的:<輸入濾波器=「貨幣」 />

工作實施例你可以在這裏找到: http://stacktrase.com/2017/07/14/angularjs4-restrict-input-text-by-extending-ngmodel/

+0

華麗!....... – Lonely