2014-12-13 134 views
0

我正在学习angularjs的过程,所以这个问题进入我的脑海。以格式过滤元素

{{val | number:2}} 

这导致的数值要像30.12

小数部分为2但是,试图在$范围同样的事情,我不能让这样的。

$scope.example = $filter('bhojendra')('uppercase');//BHOJENDRA 
$scope.val = $filter(30.12343)('number:2');//don't work 
$scope.foo = $filter(30.12334)('currency');//$30.12334 
$scope.foo = $filter(30.12334)('currency:"EUR"');//don't work 
+0

https://docs.angularjs.org/api/ng/filter/currency - '$ ('currency')(amount,symbol,fractionSize)' – tymeJV 2014-12-13 07:06:49

回答

1

你需要做的是像这样:

$scope.val = $filter('number')(30.12343, '2'); 

angularjs doc的数字滤波器说,

$过滤器(”数字')(数字,分数大小)

number - 要格式化的数字。 fractionSize(可选) - 数字四舍五入的小数位数。如果未提供 ,则 分数大小是根据当前区域设置的数字格式模式计算得出的。 在默认语言环境的情况下,这将是3


$scope.foo = $filter('currency')(30.12334);   
$scope.foo = $filter('currency')(30.12334 ,'EUR'); 

angularjs doccurrency过滤说,

$filter('currency')(amount, symbol, fractionSize) 

量 - 输入过滤。 符号(可选) - 要显示的货币符号或标识符。 fractionSize(可选) - 的小数位数四舍五入量,默认为默认的最大 分数大小当前区域

+0

$ filter(30.12343)('number','2')??? – 2014-12-13 07:07:33

0

您可以使用:

var numberFilter = $filter('number'); 
$scope.foo = numberFilter('30.12334',2); 
0

用途:

$过滤器( '过滤器')(阵列,表达,比较器)

实施例:

var app = angular.module('app',[]); 
 

 
app.controller('ctrl', function ($scope, $filter) { 
 
    
 
    $scope.example = $filter('uppercase')('asdasdasdasda'); 
 
    $scope.val = $filter('number')(30.12343, 2); // 2 = precision 
 
    $scope.foo = $filter('currency')(30.12334); 
 
    $scope.bar = $filter('currency')(30.12334,"EUR "); 
 
    
 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app="app" ng-controller="ctrl"> 
 
{{example}} 
 
<br/> 
 
    
 
{{val}} 
 
<br/> 
 

 
{{foo}} 
 
<br/> 
 
    
 
{{bar}} 
 
<br/> 
 
</div>

0

我想我迟到了,但这里有一个片段:

var app = angular.module('myApp', []); 
 

 

 
app.controller('MainCtrl', function($scope, $filter) { 
 

 
    $scope.foo = $filter('number')(30.12334, 2); 
 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 

 
<div ng-app="myApp"> 
 

 
    <div ng-controller="MainCtrl"> 
 

 
    {{foo}} 
 

 
    </div> 
 

 
</div>