Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

1.2K
Views
separadores de miles en angular 2

He probado este en mi proyecto:

 <div padding *ngIf="TotalAPagar"> $ {{TotalAPagar | number }} </div>

mi variable se llama TotalAPagar , y estoy usando un canal numérico, pero muestra el valor como este 1,000,500 .

Necesito eso para cambiar la convención de numeración a dots . P.ej. 1.000.000

He estado leyendo en los documentos en angular pero no tengo ningún ejemplo.

about 4 years ago · Santiago Trujillo
3 answers
Answer question

0

Creo que hay dos formas de resolver este problema:


1. Puede intentar sobrescribir DecimalPipe desde la biblioteca @angular/common :

De este modo:

punto-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(',', '.'); } }

y en tu código html :

 <div padding *ngIf="TotalAPagar"> $ {{TotalAPagar | pointReplacer }} </div>

2. Puede escribir su propia tubería, que reemplaza los caracteres y usar **doble tubería en su código html**

Prueba de esta manera:

punto-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 ''; } }

y en tu código html :

 <div padding *ngIf="TotalAPagar"> $ {{TotalAPagar | number | pointReplacer }} </div>

Independientemente del método que elija, no olvide declarar su propia tubería en el módulo, donde la usa:

 @NgModule({ declarations: [PointReplacerPipe], providers: [PointReplacerPipe] })
about 4 years ago · Santiago Trujillo Report

0

​Después de leer en foros y documentos sobre angular js y javascript encontré un método que pone los números en formato y moneda, ese método es toLocaleString(), es un método de javascript que ayuda a ponerlo en la moneda o idioma que necesitas .

Busco el nombre del país que necesito con el método y me muestro la información que necesito. ( http://www.localeplanet.com/icu/es-CO/ ), en mi caso fue colombia.

en mis funciones solo tengo que agregar .toLocaleString('es-CO') al resultado y poner el valor con la moneda especificada.

por ejemplo:

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');

about 4 years ago · Santiago Trujillo Report

0

Creo que esta es una solución más limpia:

Importar LOCALE_ID en app.modules.ts

 import {ErrorHandler, NgModule, LOCALE_ID} from '@angular/core';

y definir en proveedores como este:

 providers: [ PouchServiceProvider, DbProvider, { provide: LOCALE_ID, useValue: "nl-NL" } ]

esto elegirá automáticamente la identificación del separador, según local_id

about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!