Angular CurrencyPipe货币管道关于人民币符号¥的问题

做项目(Angular项目)时经常需要处理金额的显示,需要在金额前面加上¥,但又不想用简单在前面加“¥”这么不优雅的方式,于是想到了CurrencyPipe。毕竟,CurrencyPipe还可以格式化数字。
按照官方提供的文档,我写出这样的代码:

<span>{{num | currency: 'CNY':'symbol-narrow'}}</span>

刷新页面,应该没什么问题!
什么,怎么是CN¥,不应该是¥吗?
于是我检查代码,以为把symbol-narrow写成了symbol,可是并没有,百思不得其解!
原来这是Angular的问题!在Angular 2.x - 4.x版本里(5.x已经可以自动识别),在使用货币管道处理人民币之前,应先对Angular进行一些本地化的工作。
如何使其本地化?
在你的app module中:

import { LOCALE_ID } from '@angular/core';
@NgModule({
  providers: [
    { provide: LOCALE_ID, useValue: "ch-CN" }
  ]
})

这样设置之后,刷新页面,现在可以正确显示¥了!

原文地址:https://www.cnblogs.com/cme-kai/p/8024011.html