Skip to content

VictorQueiroz/ngCurrencyMask

Repository files navigation

ngCurrencyMask

![Gitter](https://badges.gitter.im/Join Chat.svg)

License Build Status

==============

Format an entire input as a currency. Check this live demo example.

Usage

npm install --save angular-currency-mask

You can still use bower mirror if you like:

bower install ng-currency-mask --save

Loading the module

	angular
	  .module('app', ['ngCurrencyMask']);

Applying in the DOM

<form>
	<input type="text" ng-model="value" ng-currency-mask> <!-- Masked input -->
	{{ text }} <!-- Unmasked output -->
</form>

Using 'currencyMask' filter

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);
			}
		});

Configuring

	angular
	  .module('app', ['ngCurrencyMask'])

	  .config(['$maskerProvider', function ($maskerProvider) {
	  	// $maskerProvider.setCurrency('USD');
	  	// $maskerProvider.setCurrency('BRL');
	  	$maskerProvider.setCurrency('MyAnotherCurrency');

	  	$maskerProvider.addMaskMatch(function (value) {
	  		return value;
	  	});
	  }]);

$maskerProvider

  • setCurrency(currency)

    • currency - The currency 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.