Dav*_*las 7 currency pipe currency-pipe angular
我对Angular中已经内置的CurrencyPipe有问题.
我需要使用CurrencyPipe显示货币符号,但除非我提供输入数字,否则我无法使用它.
因为CurrencyPipe使用当前的区域设置来获取货币符号,所以我认为输入的数字可以是可选的.
目前的行为:
{{ 1 | currency:'USD' }} --> $1
Run Code Online (Sandbox Code Playgroud)
需要的行为:
{{ null | currency:'USD' }} --> $
Run Code Online (Sandbox Code Playgroud)
你们是否知道默认管道是否可行?谢谢!!
小智 9
试试这个简单的自定义货币管道
{{ null | CustomeCurrency }}</p>
import { Pipe, PipeTransform } from '@angular/core';
import { CurrencyPipe } from '@angular/common';
@Pipe({ name: 'CustomeCurrency' })
export class CustomCurrencyPipe implements PipeTransform {
constructor(private currencyPipe: CurrencyPipe) { }
transform(value: any, currency: string, symbol: boolean = false): string {
if (value != null)
return this.currencyPipe.transform(value, currency, symbol);
return this.currencyPipe.transform(0, currency, symbol).split('0.00')[0];
}
}
Run Code Online (Sandbox Code Playgroud)
小智 7
使用角度货币管道。
{{ money | currency:'USD':'symbol' }}
Run Code Online (Sandbox Code Playgroud)
小智 6
如果您收到错误消息The currency pipe has changed in Angular v5. symbolDisplay 选项(第三个参数)现在是字符串而不是布尔值。可接受的值为“code”、“symbol”或“symbol-narrow”。然后参考 Angular 文档寻求帮助,使用此页面上的代码示例来解决问题:https : //angular.io/api/common/CurrencyPipe
Angular v5 中的货币管道已更改。symbolDisplay 选项(第三个参数)现在是字符串而不是布尔值。可接受的值为“code”、“symbol”或“symbol-narrow”。