AngularJS:根据语言环境格式化数字

8

我需要显示这个数字2387.15
我使用AngularJS来实现:

{{myNumber|number:2}}

我得到了2,387.15

我不想在2和3之间用逗号(我是法国人)。

是否有一种方法可以使用angularjs设置语言环境?

谢谢

1个回答

11

方法1。如果你想要使用法语区域设置,则可以直接包含相应的本地化文件。例如:

<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-i18n/1.4.5/angular-locale_fr-fr.js"></script>

Angular将会使用它进行本地化。

<script src="https://code.angularjs.org/1.4.3/angular.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-i18n/1.4.5/angular-locale_fr-fr.js"></script>
<script>
  angular.module('demo', []).controller('mainCtrl', function($scope) {
    $scope.myNumber = 2387,15;
  });
</script>

<div ng-app="demo" ng-controller="mainCtrl">
  {{myNumber|number:2}}
</div>

方法二。你可以自定义NUMBER_FORMATS.GROUP_SEP常量来实现另一种简单的方法:

angular.module('demo', []).controller('mainCtrl', function($scope, $locale) {
    $locale.NUMBER_FORMATS.GROUP_SEP = ' ';
    $scope.myNumber = 2387,15;
});
<script src="https://code.angularjs.org/1.4.3/angular.js"></script>

<div ng-app="demo" ng-controller="mainCtrl">
    {{myNumber|number:2}}    
</div>


嗨,我尝试了第二种方法,但它仍然显示2 387,00。 - Parth Doshi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接