2014-03-31 54 views
0

有沒有什麼辦法在點擊時增加ng-repeat循環內的變量?AngularJs:簡單的系統

<li class="item" ng-repeat="post in posts"> 
... 
... 
<button ng-click="postLike(post.like_count)">Like {{post.like_count}}</button> 
... 
... 
</li> 

$scope.postLike = function(likeCount) { 
    //likeCount++ 
} 

我很可能使用$scope.$apply莫名其妙,但我怎麼知道到底遞增哪些變量?

回答

1
<button ng-click="postLike(post)">Like {{post.like_count}}</button> 

$scope.postLike = function(post) { 
    post.like_count += 1; 
}; 
+0

只是爲了澄清:爲什麼這個工程的原因是你正在傳遞一個引用類型的函數,並改變它,問題是傳遞一個原始類型。 –

1

這樣做的方法是如下:

<button ng-click="postLike($index)">Like {{post.like_count}}</button> 

$scope.postLike = function(i) { 
    $scope.posts[i].like_count += 1; 
}; 

,您可以直接改變帖數組中的值。