如何将Angularjs数字过滤器中的分隔符从逗号更改为自定义字符?
现在{{ price | number }}
返回1,000.00
,而我需要它像1 000.00
这样。
我需要如何重写内置的Angular过滤器?
如何将Angularjs数字过滤器中的分隔符从逗号更改为自定义字符?
现在{{ price | number }}
返回1,000.00
,而我需要它像1 000.00
这样。
我需要如何重写内置的Angular过滤器?
您不需要修改Angular源代码或更改语言环境。 您甚至不需要为此编写自定义过滤器。 只需更改$locale服务的NUMBER_FORMATS.GROUP_SEP
即可:
$locale.NUMBER_FORMATS.GROUP_SEP = ' ';
$scope.price = 100000;
但最好在run块中执行,而不是在控制器中执行。
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>
$locale
,它是一个值(而不是提供者或常量),因此在配置块中无法访问。 - dfsq