2015-01-08 3 views
0

중첩 된 ng-repeater에서 요소를 전환하는 가장 좋은 방법은 무엇입니까? 나는 다음 각 템플릿이 있습니다중첩 된 repeater에서 angularjs 표시 또는 숨기기

<div> 
    {{question.Description}} 
    <div ng-repeat="answer in question.Answers"> 
     <a href="#" ng-click="answerQuestion(question, answer.ID, $index)">{{answer.Description}}</a> 
     <div ng-repeat="qAnswer in answer.Questions"><!-- Hide/show here --> 
      <a href="#" ng-click="answerQuestion(question, qAnswer.ID, $index)">{{qAnswer.Description}}</a> 
      <div ng-repeat="childAnswer in qAnswer.Answers"><!-- Hide/show here --> 
       <a href="#" ng-click="answerQuestion(question, childAnswer.ID, $index)">{{childAnswer.Description}}</a> 
      </div> 
     </div> 
    </div> 
</div> 

편집 :

내가 클릭 동작을 기반으로 전환 할 수 싶습니다

+1

무엇을 기반으로 어떤 기준에 토글, 이런 식으로 뭔가를 시도? 질문을 다시 읽으십시오 - 기분이 좋습니까? –

답변

1
<div> 
    {{question.Description}} 
    <div ng-repeat="answer in question.Answers"> 
     <a href="#" ng-click="answerQuestion(question, answer.ID, $index);answer.show=!answer.show">{{answer.Description}}</a> 
     <div ng-repeat="qAnswer in answer.Questions" ng-show="answer.show"><!-- Hide/show here --> 
      <a href="#" ng-click="answerQuestion(question, qAnswer.ID, $index);qAnswer.show=!qAnswer.show">{{qAnswer.Description}}</a> 
      <div ng-repeat="childAnswer in qAnswer.Answers" ng-show="qAnswer.show"><!-- Hide/show here --> 
       <a href="#" ng-click="answerQuestion(question, childAnswer.ID, $index)">{{childAnswer.Description}}</a> 
      </div> 
     </div> 
    </div> 
</div> 

U는, true 또는 false로 개체 값을 설정해야 angularjs 나머지를 할 것입니다.

1

<div ng-init="items_display=[]"> 
    {{question.Description}} 
    <div ng-repeat="answer in question.Answers"> 
     <a href="#" ng-click="answerQuestion(question, answer.ID, $index)">{{answer.Description}}</a> 
     <div ng-repeat="qAnswer in answer.Questions"><!-- Hide/show here --> 
      <a href="#" ng-click="answerQuestion(question, qAnswer.ID, $index)" ng-click="items_display[$index] = !items_display[$index]">{{qAnswer.Description}}</a> 
      <div ng-repeat="childAnswer in qAnswer.Answers" ng-show="items_display[$index]"><!-- Hide/show here --> 
       <a href="#" ng-click="answerQuestion(question, childAnswer.ID, $index)">{{childAnswer.Description}}</a> 
      </div> 
     </div> 
    </div> 
</div> 
관련 문제