import { Pipe, PipeTransform } from '@angular/core'; @Pipe({ name: 'millimeter' }) 方法一 export class MillimeterPipe implements PipeTransform { transform(value: number, currencySign: string = '$ ', decimalLength: number = 2, chunkDelimiter: string = ',', decimalDelimiter: string = '.', chunkLength: number = 3): string { 判断是否空值 if (value??'' !== '') { value /= 1; let result = '\\d(?=(\\d{' + chunkLength + '})+' + (decimalLength > 0 ? '\\D' : '$') + ')'; let num = value.toFixed(Math.max(~~decimalLength)); return '\t'+currencySign + (decimalDelimiter ? num.replace('.', decimalDelimiter) : num).replace(new RegExp(result, 'g'), '$&' + chunkDelimiter); }else{ return ''; } } } 方法二 export class MillimeterPipe implements PipeTransform { transform(value: number, locale?: string,currencySign: string = '$ ',): string { if (value !== undefined && value !== null ){ return currencySign + new Intl.NumberFormat(locale, { minimumFractionDigits: 2 }).format(Number(value)); }else { return ''; } }
}