![Gitter](https://badges.gitter.im/Join Chat.svg)
==============
Format an entire input as a currency. Check this live demo example.
npm install --save angular-currency-mask
You can still use bower mirror if you like:
bower install ng-currency-mask --save
angular
.module('app', ['ngCurrencyMask']);
<form>
<input type="text" ng-model="value" ng-currency-mask> <!-- Masked input -->
{{ text }} <!-- Unmasked output -->
</form>
In the DOM:
<form>
<input type="text" ng-model="value"> <!-- Unmasked input -->
{{ value | currencyMask:'mask':'USD' }} <!-- Masked output -->
{{ value | currencyMask:'mask':'BRL' }} <!-- Masked output -->
{{ value | currencyMask:'mask':'default' }} <!-- Masked output -->
{{ value | currencyMask:'unmask' }} <!-- Unmasked output -->
</form>
On your controller, through $filter
:
angular
.module('app', ['ngCurrencyMask'])
.controller('ProductCreateCtrl', function ($filter, Product) {
var myCurrency = 'USD',
currencyMaskFilter = $filter('currencyMask');
$scope.product = new Product;
$scope.saveProduct = function (product) {
$scope.product.price = currencyMaskFilter('unmask', myCurrency);
}
});
angular
.module('app', ['ngCurrencyMask'])
.config(['$maskerProvider', function ($maskerProvider) {
// $maskerProvider.setCurrency('USD');
// $maskerProvider.setCurrency('BRL');
$maskerProvider.setCurrency('MyAnotherCurrency');
$maskerProvider.addMaskMatch(function (value) {
return value;
});
}]);
-
setCurrency(currency)
currency
- Thecurrency
which will be used all time for directives, filters.
-
addMaskMatch(replace, value)
replace
{String|RegExp|Function} - The value/regular expression which will be used to match the searched value in the input content.Function
(value) - It should return the value with the changes which you want, see the example below.
value
- The value which will replace the found string at the input content.
-
addUnmaskMatch(replace, value)
It will be used when your field is getting unserialized and all the commas and dots are getting removed.