如何自定义货币过滤器以显示货币符号'€'或任何其他angularJS

时间:2015-05-25 08:26:18

标签: javascript angularjs

angularJS中currency filter的默认货币符号为$。如何将其更改为“''还是其他什么?我在here找到了一些冗长的代码。 但有没有顺利的方法呢?

<div ng-app=""  >

    <p>Total = {{ (10 * 13) | currency }}</p>

</div>

结果是Total = $130.00 如何制作Total = €130.00Total = USD130.00

5 个答案:

答案 0 :(得分:3)

1.试试这个{{price | currency:"€"}},它将解决您的问题http://jsfiddle.net/TheSharpieOne/N7YuP/

2.为了制作更通用的格式,如果你可以为货币格式编写自定义过滤器会更好。

这样它就可以支持任何货币格式。

Example

答案 1 :(得分:2)

根据documentation,您可以指定自定义货币标识符

{{amount | currency:"€"}}

Angular还提供了handling for i18n/l10n

答案 2 :(得分:1)

您可以为过滤器提供货币符号:

&#13;
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular.min.js"></script>
<div ng-app=""  >

    <p>Total = {{ (10 * 13) | currency : '€' }}</p>

</div>
&#13;
&#13;
&#13;

答案 3 :(得分:1)

您所要做的就是为货币过滤器提供符号参数。 Angular文档提供以下语法:

{{ currency_expression | currency : symbol : fractionSize}}

通过在互联网上搜索可以找到正确的符号。但既然你要求欧元,这里有一些变化:

<div ng-app=""  >

    <p>Total = {{ (10 * 13) | currency:"&euro;" }}</p>

</div>

OR

<div ng-app=""  >

    <p>Total = {{ (10 * 13) | currency:"€" }}</p>

</div>

注意:symbol参数必须是字符串

或者,您甚至可以使用文档Angular API:currency中提供的JavaScript语法在控制器或自定义过滤器中使用过滤器 -

例如:$ filter(&#39; currency&#39;)(输入,&#34;€&#34;);或$ filter(&#39;货币&#39;)(输入,&#34;€&#34;);

注意:请记得将$ filter注入相关控制器或自定义过滤器。

希望有所帮助!

答案 4 :(得分:-1)

$ filter('currency')(值,currencySymbol,分数);