Angular Js货币,符号欧元之后

cor*_*aro 32 javascript currency angularjs

如何将符号欧元从前面的值移到后面呢?

例:

{{product.price | currency : "€"}} 会产生 € 12.00

但我想 12.00 €

Fre*_*mer 59

您不必破解货币过滤器!

AngularJS对i18n/l10n有很大的支持.货币过滤器使用区域设置服务中的默认货币符号,并根据区域设置对其进行定位.

所以关于支持和设置正确的区域设置.

<script src="i18n/angular-locale_de-de.js"></script>
Run Code Online (Sandbox Code Playgroud)

如果您正在使用npmbower通过angular-i18n 提供所有语言环境.

<span>{{ product.price | currency }}</span>
Run Code Online (Sandbox Code Playgroud)

现在将产生以下输出:

65,95 €
Run Code Online (Sandbox Code Playgroud)

支持多个本地化

如果要支持多个本地化,请小心使用货币符号,因为它会更改为使用的区域设置的默认货币.但是65,95 €有所不同$65,95.提供货币符号作为安全参数:

<span>{{ product.price | currency:'€' }}</span>
Run Code Online (Sandbox Code Playgroud)

de-de输出中仍然是65,95 €但如果位置是例如.en-us它会€65.95(尽管有一些其他的说法是用英语显示欧元价格的正确格式).

要了解有关angular和i18n/l10n的更多信息,请参阅开发人员指南.


Rea*_*lar 17

您不能使用货币过滤器.你可以自己编写,或者只使用数字过滤器.

{{(produce.price | number:2) + "€"}}

  • 其实你可以.使用angulars i18n支持适用于货币过滤器和预期:http://stackoverflow.com/a/34953870/555274 (2认同)