2017-05-13 3 views
0

의견이있는 게시물 목록이 있습니다. 내 페이지에있는 각 게시물 내부의 주석 배열을 통과해야합니다. 나는 각 게시물에 대한 정확한 코멘트를 표시하기 위해 인덱서처럼 사용할 수있는 게시물을 위해 ngRepeat 내부 변수를 만들려고합니다. 중첩 범위를 만드는 ngRepeat로 인해이 변수는 각 반복마다 고유해야합니다. 그러나 ng-click으로 변경하려고하면 변경되지 않습니다.ngRepeat 루프 내부에 기본값이있는 독립적 인 인덱서를 만드는 방법

내 ngRepeat은 :

<div class="question_block col-xs-12" 
         ng-repeat="answer in question.content.answer track by answer.id"> 

<span style="display:none">{{counter=0}}</span>옵니다. 그런 다음 <span>{{answer.comments[counter].user.organization.title}}</span>과 같은 항목을 보여 드리겠습니다. <a href ng-click="counter++">Increment</a> 같은 것을하려고 할 때 아무 일도 일어나지 않습니다. 무슨 일이야?

답변

0

사용 ng-init="counter = 0"과 연결하여 컨트롤러의 기능 ng-click :

다음
<div ng-repeat="item in items track by $index" ng-init="counter=0"> 
    {{item}} ({{counter}}) 
    <button ng-click="clickHandler()">Increment</button> 
    <hr /> 
</div> 

는, 이벤트의 맥락에서 counter를 증가 사용할 수 this.counter

$scope.clickHandler = function() { 
this.counter++; 
}; 

Plunker 데모 : http://plnkr.co/edit/J4d0JlJSKD7i4OfMT2r4?p=preview

+1

아이디어를 위해 Ty, 나는 함수를 증가 시키려고했지만 변수를 인덱스로 전달하는 것은 좋지 않았다. 열쇠는 _this_를 사용하여 현재 스코프 변수를 지정합니다. –