如何在Component和Service中使用Angular数字管道

时间:2017-06-30 11:16:05

标签: angularjs

我使用下面的数字管道格式化数量:

{{tradcollapse?.quantity | number}}

示例显示为:1,234,0

我想在Component中使用此格式数量的过滤,而不是数字,因为它是12340。 我该如何实现呢?

3 个答案:

答案 0 :(得分:4)

您可以使用formatNumber函数Angular 8。

import { formatNumber } from '@angular/common';

//需要的地方

console.log(formatNumber(this.numberValue,"en-US", "1.2-3"));

引用https://angular.io/api/common/formatNumber

答案 1 :(得分:3)

import { NumberPipe } from '@angular/common';

class MyService {

  constructor(private numberPipe : NumberPipe ) {}

  transformNumber(number) {
    this.numberPipe .transform(number);
  }
}

这样的事情,或者从

获得帮助

Angular 2/4 use pipes in services and components

答案 2 :(得分:0)

如果其他人需要这样做,则现在必须导入DecimalPipe而不是NumberPipe。

例如

import { DecimalPipe } from '@angular/common';

然后转换 例如

// Format cost amount to currency to improve readability of number.
formatToCurrency(r) {
  let val = this.decimalPipe.transform(r.get('Amount').value, '1.2-2')
  r.get('Amount').setValue(val);
}