i have tried this one in my proyect:
<div padding *ngIf="TotalAPagar">
$ {{TotalAPagar | number }}
</div>
my variable is called TotalAPagar
, and I'm using number pipe, but it shows the value like this 1,000,500.
I need that to change the numbering convention to dots
. Eg. 1.000.000
I have been reading about in the docs in angular but doesn't have any example.
I think that there are two ways to resolve this problem:
1. You can trying overwrite DecimalPipe from @angular/common library:
In this way:
point-replacer.pipe.ts
import { Pipe } from '@angular/core';
import {DecimalPipe} from "@angular/common";
@Pipe({
name: 'pointReplacer'
})
export class PointReplacerPipe extends DecimalPipe {
transform(value: any, digits?: string): string {
return super.transform(value, digits).replace(',', '.');
}
}
and in your html code:
<div padding *ngIf="TotalAPagar">
$ {{TotalAPagar | pointReplacer }}
</div>
2. You can write your own pipe, which replaces characters and use **double pipe in your html code**
Try in this way:
point-replacer.pipe.ts
import { Pipe, PipeTransform } from '@angular/core';
@Pipe({
name: 'pointReplacer'
})
export class PointReplacerPipe implements PipeTransform {
transform(value: string, args: any[]): string {
if(value) {
return value.replace(',', '.');
}
return '';
}
}
and in your html code:
<div padding *ngIf="TotalAPagar">
$ {{TotalAPagar | number | pointReplacer }}
</div>
No matter which method you choose, don't forget to declare your own pipe in module, where you use it:
@NgModule({
declarations: [PointReplacerPipe],
providers: [PointReplacerPipe]
})
After reading in forums and docs about angular js y javascript i found a method that puts the numbers in format and currency, that method is toLocaleString(), is a method from javascript that helps to put it in the currency or languaje that you need.
i search the name of the country that i need with the method and show me the info that need about. (http://www.localeplanet.com/icu/es-CO/), In my case was colombia.
in my functions i just have to add the .toLocaleString('es-CO') to the result and put the value with the specified currency.
for example:
this.TotalAPagar = (this.calcularDescuentosLiquidacion(this.TotalDevengadoValor, this.sueldoPendientePorCancelarValor, this.item.libranza, this.item.prestamo_empleado)+ this.calcularIndemnizacion(this.item.promedio_salario, this.item.fecha_fin_contrato, this.item.fecha_inicio_contrato)).toLocaleString('es-CO');
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With