可以使用自定義過濾器的貨幣。檢查:
app.filter('currencyFilter',
['$filter', '$locale', function(filter, locale) {
var currencyFilter = filter('currency');
var formats = locale.NUMBER_FORMATS;
return function(amount, num, currencySymbol) {
if (num===0) num = -1;
var value = currencyFilter(amount, currencySymbol);
var sep = value.indexOf(formats.DECIMAL_SEP)+1;
var symbol = '';
if (sep<value.indexOf(formats.CURRENCY_SYM)) symbol = ' '+formats.CURRENCY_SYM;
return value.substring(0, sep+num)+symbol;
};
}]);
而且使用它像下面這樣:
{{1000 | currencyFilter:0}} // $1,000
{{1000.234 | currencyFilter:0}} // $1,000
{{1000.55555 | currencyFilter:2}} // $1,000.56
入住這plunker
你到底想幹什麼? ['number'過濾器](https://docs.angularjs.org/api/ng/filter/number)返回一個字符串,['currency' filter](https://docs.angularjs.org/api/ng/filter/currency)需要一個數字,所以顯然不能工作。我想你只是想使用'currency'過濾器的第三個參數。 – Blackhole 2014-10-18 10:21:49