具有自定义分隔符的Angularjs静态数字过滤器 [英] Angularjs static number filter with custom delimiter

查看:69
本文介绍了具有自定义分隔符的Angularjs静态数字过滤器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何将Angularjs数字过滤器中的分隔符从逗号更改为自定义?

How to change delimiter in Angularjs number filter from comma to something custom?

现在 {{price | number}} 返回 1,000.00
我需要像 1 000.00 那样。

我究竟需要如何重写内置-in angular filter?

How exactly do I need to rewrite built-in angular filter?

推荐答案

您不必乱用Angular源或将语言环境更改为其他语言。您甚至不需要为此编写自定义过滤器。只需将$ locale服务的 NUMBER_FORMATS.GROUP_SEP 更改为您需要的任何内容:

You don't have to mess with Angular source or change locale to other. You don't even need to write custom filter for this. just change NUMBER_FORMATS.GROUP_SEP of the $locale service to whatever you need:

$locale.NUMBER_FORMATS.GROUP_SEP = ' ';
$scope.price = 100000;

但最好是在运行块中,而不是在控制器中。

But it's better to do it in run block, rather then in controller.

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>

这篇关于具有自定义分隔符的Angularjs静态数字过滤器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆