I've used angular filters to do all kinds of fun formatting, but always on primitive values. For example, filtering numbers into a currency format.
How would I do that same kind of filtering for an array of values? For example
price = 1
prices = [1,2,3]
Assuming currency is the currency filter mentioned in https://docs.angularjs.org/api/ng/filter/currency
{{price | currency}}
would return $1.00
I would like
{{prices | currency}}
to return [$1.00,$2.00,$3.00]
how can i write a filter that does that? Or is there a different tool i should be using?
For more background...I'm using this array inside of the angular-selectize plugin. I don't have the option of using ng-repeat on my values.
The currency
filter applies to a single value. If you want a filter that applies to an array, you need to add your own, such as:
angular.module('yourModule')
.filter('currenyArray', function($filter) {
return function(input, uppercase) {
input = input || [];
var out = [];
for (var i = 0; i < input.length; i++) {
out.push($filter('currency')(input[i]))
}
return out;
};
})
However this will return an array. If you do want to write the array, you need to adapt the function to compute a string instead of an array.