angular-money-directive
This directive validates monetary inputs in "42.53" format (some additional work is needed for "32,00" European formats). Note that this is not designed to work with currency symbols. It largely behaves like Angular's implementation of type="number".
It does a few things:
- Prevents entering non-numeric characters
- Prevents entering the minus sign when
min >= 0 - Supports
minandmaxlike in<input type="number"> - Rounds the model value by
precision, e.g.42.219will be rounded to42.22by default - On
blur, the input field is auto-formatted. Say if you enter42, it will be formatted to42.00
Version 1.2.x supports Angular 1.3 and up. Version 1.1.x will continue to work for Angular 1.2.
Usage:
npm install angular-money-directive or
bower install angular-money-directive Load the unminified or minified file from dist dir:
<script src="dist/angular-money-directive.js"></script> Then include it as a dependency in your app.
angular.module('myApp', ['fiestah.money']) Attributes:
money: requiredng-model: requiredtype: Set totextor just leave it out. Do not set tonumber.min: optional Defaults to0.max: optional Not enforced by defaultprecision: optional Defaults to2. Set to-1to disable rounding. Rounding is also disabled ifparseInt(precision, 10)does not return0or higher.
Basic example:
<input type="text" ng-model="model.price" money>min, max and precision can be set dynamically:
<input type="text" ng-model="model.price" money min="{{min}}" max="{{max}}" precision="{{precision}}">Tests:
- Install test deps:
npm install - Run:
./node_modules/karma/bin/karma start