我在 angular2 中使用货币管道,当前我正在使用
{{price | currency:'USD':true:'1.2-2'}}
哪个输出$480,000.00
但是我想要的结果是$480k
,这可能实现吗?
我在 angular2 中使用货币管道,当前我正在使用
{{price | currency:'USD':true:'1.2-2'}}
哪个输出$480,000.00
但是我想要的结果是$480k
,这可能实现吗?
您需要编写一个自定义管道来用 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;
}
}
}