2017-12-27 132 views
2

我是Angular 2中的初学者。我试图使用角度显示一些数据。这是我的代码部分:在angular2中删除数字管道中的逗号

<span>Value :</span> <span>{{myvalue| number : '1.2-2'}}</span> 

上面的部分将显示值,例如:“124,500.00”。它的好,但我需要删除逗号和显示数据只有124500.00。这也不是货币类型。

我想这样和它不工作

<span>Value :</span> <span>{{myvalue| number: '.2-3''}}</span> 

我如何能做到一些事情吗?我可以使用任何自定义管道?

在此先感谢

回答

4

事实上,它看起来像有没有直接的参数来DecimalPipe更改或删除小数点。这可能是最好编写自己的管道来删除小数点。

您可以编写自己的管道来完全替代当前使用的DecimalPipe(对于所有内容都是单管道),也可以编写管道,在使用DecimalPipe(管道连接)后删除逗号。最后一个选项可能看起来像这样(我从this的答案得到的代码,所以问候Adrien)。

import { Pipe, PipeTransform } from '@angular/core'; 

@Pipe({ 
    name: 'noComma' 
}) 
export class NoCommaPipe implements PipeTransform { 

    transform(val: number): string { 
    if (val !== undefined && val !== null) { 
     // here we just remove the commas from value 
     return val.toString().replace(",", ""); 
    } else { 
     return ""; 
    } 
    } 
} 

您可以像这样连接管道。

<span>Value :</span> <span>{{myvalue| number : '1.2-2' | noComma}}</span> 

只记得在你的模块中声明你的管道。