如何在angular.js中找到两个数字之间的差异?

时间:2015-02-18 21:23:56

标签: javascript angularjs

我想在anuglar js指令标签中找到两个数字之间的区别。

      <div ng-repeat="post in posts | orderBy:'-upvotes'">
    <span class="glyphicon glyphicon-thumbs-up"
      ng-click="incrementUpvotes(post)"></span>
    {{post.upvotes}}
     <span class="glyphicon glyphicon-thumbs-down"
      ng-click="incrementDownvotes(post)"></span>
    {{post.downvotes}}


    <span class="glyphicon glyphicon-glyphicon-minus"></span>
    <span class="glyphicon glyphicon-glyphicon-plus"></span>
      {{post.upvotes - post.downvotes}}  // I want the difference of these two numbers

必须有一种方法可以使用两个数字的绝对值,或使用一些角度方法来找到它们之间的差异。目前使用上面的代码,它将执行等式,但它会进行严格的减法,而不是给出这些数字之间的实际差异。

2 个答案:

答案 0 :(得分:3)

将这样的内容添加到post定义(在模型中)

...
// assuming you have these already (or similar)
post.upvotes = 2;
post.downvotes = 1;
...
// add something along the lines of
post.voteDiff = function(){
  return Math.abs(upvotes - downvotes);  // would return 1 in this case
}

然后在您的HTML中可以简单地将其称为任何其他属性{{post.voteDiff()}}

<强>已更新

感谢@New Dev在评论中进行更正

答案 1 :(得分:0)

{{post.upvotes + post.downvotes}}

这解决了这个问题。不需要任何花哨的数学或方法。