Live Demo
Why this:
# Controller
$scope.price = -10;
# View
{{ price | currency }}
results in ($10.00) rather than
It works better for me by checking negative number:
var app = angular.module('myApp');
app.filter('customCurrency', ["$filter", function ($filter) {
return function(amount, currencySymbol){
var currency = $filter('currency');
if(amount < 0){
return currency(amount, currencySymbol).replace("-", "(") + ')'
}
return currency(amount, currencySymbol);
};
}]);