6

在我看来,我有这样的声明,并且绑定具有价值让我们说 6970.87127381382131831 但是,我想最多将其限制在小数点后 2 位。由于我使用 ngFor 列出元素,因此无法使用对象通过 .toFixed(2) 对其进行限制。谢谢你们 !

{{ cartitem.original_price * cartitem.qty * cartitem.unit_multiplier }}

我试过下面的方法:

 {{ cartitem.original_price * cartitem.qty * cartitem.unit_multiplier | number : 2 }}

没有帮助我。

4

2 回答 2

5

以下表达式将允许您将小数部分设置为两位数:

 {{ cartitem.original_price * cartitem.qty * cartitem.unit_multiplier | number : '1.2-2' }}

1.2-2 表示: 小数点前至少一位,小数点后至少两位但不超过两位。


{{ cartitem.original_price * cartitem.qty * cartitem.unit_multiplier | number : '1.0-2' }}

1.0-2 表示: 小数点前至少一位,小数点后不超过两位。


关于 Angular DecimalPipes 和配置:https ://angular.io/api/common/DecimalPipe

于 2017-08-19T15:13:09.880 回答
1

正如官方文档中报道的那样https://docs.angularjs.org/api/ng/filter/number

{{ number_expression | number : fractionSize}}

在你的情况下:

 {{ (cartitem.original_price * cartitem.qty * cartitem.unit_multiplier) | number : 2 }}

如果您想要固定位数,您可以创建自己的过滤器

App.filter('twoDecimal',function(input, scope){

return function(){

   return input.toFixed(2);

  }
})

并应用它

 {{ (cartitem.original_price * cartitem.qty * cartitem.unit_multiplier) | twoDecimal }}
于 2017-08-19T15:11:57.103 回答