Angular 2 货币管道

Angular 2 Currency Pipe

我在 angular2 中使用货币管道,当前我正在使用

{{price | currency:'USD':true:'1.2-2'}}

输出0,000.00但是我想要的结果是0k,这样可以实现吗?

您需要编写自定义管道以用 K 替换千位。您仍然可以使用货币管道,但将其与您的自定义管道链接起来。您可以在此处查看文档:https://angular.io/docs/ts/latest/guide/pipes.html

我最终创建了自己的自定义管道

@Pipe({
name: 'salePrice'
})

export class PricePipe implements PipeTransform {
    transform(input: number): any {


    let price: number = input;

        if (price > 3000000) {
            return '3m+';
        }

        if (price / 1000 > 1) {
            if (price / 1000000 >= 1) {
                return parseFloat((price / 1000000).toFixed(3)) + "m";
            } else {
                return parseFloat((price / 1000).toFixed(2)) + "k";
            }
        } else {
            return price;
        }
    }
}