使用管道将角度四舍五入到最接近的整数



我们用什么管道将数字四舍五入到最接近的美元或整数,例如2729999.61将是2730000。

有没有一种方法可以像使用数字管道一样在角度模板上做到这一点?像|数字或

|编号:"1.2-2">

从DecimalPipe:上的文档

值的十进制表示由digitalsInfo参数指定,以以下格式编写:

{minIntegerDigits}.{minFractionDigits}-{maxFractionDigits}

同样重要:

如果格式化的值被截断,则将使用";最接近";方法:

所以,您想要类似number: '1.0-0':的东西

// In your component:
myNumber = 2729999.61;
// And then in your template:
<p>Rounded number: {{ myNumber | number: '1.0-0' }}</p>
// will output 'Rounded number: 2,730,000'

如果要使用其他标准设置数字格式,创建管道很容易。下面是一个仅使用Math.round:的管道示例

import { Pipe, PipeTransform } from '@angular/core';
@Pipe({ name: 'customNumber' })
export class CustomNumberPipe implements PipeTransform {
transform(value: number, ...args: any[]) {
return Math.round(value);
}
}

要使用它,请确保您的管道作为应用程序模块中的声明导入,然后:

<!-- will output 'Rounded with custom pipe: 2730000' -->
<p>Rounded with custom pipe: {{ myNumber | customNumber }}</p>

这里有一个工作堆叠litz,有两个选项可以让你继续前进。

最新更新