有没有办法: 1)过滤货币数字,但没有任何迹象表明该数字是哪种货币(包括一个美元符号;没有任何符号)? 2)通过在括号中显示负数来过滤常规数字?
E.g。 -12.345过滤后看起来像:(12.345)
谢谢。
答案 0 :(得分:4)
货币过滤器采用符号参数。将其设置为'',它不会显示符号。当负面时它会显示括号......
{{ value | currency : '' }}
但是,它会将数字四舍五入到小数点后2位。您可以轻松创建自定义过滤器...
app.filter('numeric', function() {
return function (value) {
if (value < 0) {
value = '(' + Math.abs(value) + ')';
}
return value;
};
});
答案 1 :(得分:0)
您可以使用此过滤器显示带括号而非减号的数字:
angular.module('yourModule', [])
.filter('negativeParenthesis', function() {
return function(input) {
if (input < 0) {
return "("+Math.abs(input)+")";
} else {
return input + "";
}
}
});
你当然会这样使用它:
<p>{{myNumberValue|negativeParenthesis}}</p>