我想显示总是带有两个十进制值的数字。 我可以显示带有两个十进制值的值。
$scope.value1 = 10000;
$scope.value2 = 12444.44443;
在我使用的控制器中
$ scope.value1 = $ scope.value1.toFixed(2);
$ scope.value2 = $ scope.value2.toFixed(2);
然后在HTML中,我可以显示为“ 10000.00
”“ 12444.44
”。但它也改变了我的模型价值。我不想改变价值。我希望仅将值显示为“ 1000.00
”“ 12444.44
”。
即使我尝试了
{{value1 | setDecimal : 2 }}
{{value2 | setDecimal : 2 }}
显示为
10000
12444.44
此setDecimal仅更改我的小数值。
我想显示像setDecimal,但需要显示10000也为10000.00
答案 0 :(得分:5)
您可以在模板中使用number
过滤器作为管道来实现此目的:
angular.module('app', []).controller('MyCtrl', ['$scope', function($scope) {
$scope.value1 = 10000;
$scope.value2 = 12444.44443;
}]);
<div ng-app="app">
<div ng-controller="MyCtrl">
<p>{{ value1 | number: 2 }}</p>
<p>{{ value2 | number: 2 }}</p>
</div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
答案 1 :(得分:2)
请参阅代码输出。我认为Documents非常有帮助
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular.min.js"></script>
<div ng-app> {{12342 | number: 2}}</div>
&#13;
答案 2 :(得分:0)
value.toFixed(2)
应该提供你需要的东西
答案 3 :(得分:0)