Я использую валютную трубу в 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;
}
}
}