如何修改Angular货币的小数位数?

时间:2020-10-13 22:44:32

标签: angular

{{ 10000 | currency:'COP':'':'1.2-2'}}

结果= 10.000,00

我需要以小尺寸10.000显示小数位, 00

已解决

在为另一个人服务的情况下,我如下解决了该问题

@Pipe({
  name: 'myCurrency'
})
export class MyCurrencyPipe implements PipeTransform {
  constructor(private sanitizer: DomSanitizer) { }  
  transform(num: any, currencyCode: string, showSymbol: boolean, digits: string): any {
    let value = new CurrencyPipe(navigator.language).transform(num, currencyCode, showSymbol, digits);
    let lastDigit = '<span style="font-size: 80%;">' + value.slice(-3) + '</span>';
    let firstDigit = value.match(/\d/);
    let symbol = value.slice(0, firstDigit.index);
    let amount = value.slice(firstDigit.index);
    let amountLast = symbol +amount.slice(0, -3) + lastDigit;
    const sanitizedContent = DOMPurify.sanitize(amountLast);
    return this.sanitizer.bypassSecurityTrustHtml(sanitizedContent);   

  }

}

1 个答案:

答案 0 :(得分:1)

您的语法中有一个小错字。您可以在Angular Currency Pipe Docs文档中找到正确的语法。它应该是这样的:

{{10000 | currency:"COP":"symbol":"1.2-2"}}

如果您想使用它,在这里我也创建了一个有效的StackBlitz example