使负数显示为正数,但保持实际值

时间:2014-10-30 15:31:50

标签: angularjs

我在这里突发奇想,但我想我会在这里要求检查。

我有一个整数值,用于确定页面上其他元素的行为方式,整数的实际值很重要(无论是负数还是正数),但实际上显示前缀连字符时为负数期望的。

有没有办法“隐藏”连字符而不改变整数的实际值?请记住,该值为$watch,因此将其乘以-1是不可能的。

模板:

<p>{{ value }}</p>

指令:

scope.$watch('value', function() 
{
 if (scope.value > 0)
 {
   //do something
 }
 else
 {
  //do something else
 }

});

添加了代码,而不是我认为真的有必要

2 个答案:

答案 0 :(得分:12)

你可以使用过滤器

.filter('positive', function() {
        return function(input) {
            if (!input) {
                return 0;
            }

            return Math.abs(input);
        };
    })

所以在你的模板中使用

{{value | positive}}

答案 1 :(得分:1)

传递一个像这样的函数:

查看

<p>{{ positiveLookingValue() }}</p>

<强>控制器

$scope.positiveLookingValue = function(){
  return Math.abs($scope.value);
}