如何将Angularjs数字过滤器中的分隔符从逗号更改为自定义?
现在{{ price | number }}
会返回1,000.00
。
我需要像1 000.00
一样。
我究竟需要如何重写内置角度滤镜?
答案 0 :(得分:15)
您不必乱用Angular源或将语言环境更改为其他语言。您甚至不需要为此编写自定义过滤器。只需将$ locale服务的NUMBER_FORMATS.GROUP_SEP
更改为您需要的任何内容:
$locale.NUMBER_FORMATS.GROUP_SEP = ' ';
$scope.price = 100000;
但是在运行块中更好,而不是在控制器中。
angular.module('demo', []).controller('MainCtrl', function($scope, $locale) {
$locale.NUMBER_FORMATS.GROUP_SEP = ' ';
$scope.price = 100000;
});

<script src="https://code.angularjs.org/1.4.3/angular.js"></script>
<div ng-app="demo" ng-controller="MainCtrl">
{{ price | number }}
</div>
&#13;