2016-10-19 1 views
0

질문이 이상하게 들리면 용서해주십시오. 나는 다음과 같은 객체가 있다고 가정 :ng-repeat 소스에서 다른 키를 호출하는 방법

// For example purposes, pretend that link gets pushed to $scope.links 5 times. 
var link = { 
    name: "name", 
    description: "description", 
    members: [{ 
     memname: "member name" 
    }], 
    active: true 
} 

$scope.links.push(link); 

을 ... 그리고

<li ng-repeat="item in links"> 
    <li ng-repeat = "member in item.members"> 
    ... 
    </li> 
</li> 

을 다음과 같이 나는 $ scope.links를 사용 ... 그리고 member in item.members와 목록 안에, 내가 ng-show에 대한 link.active를 사용하려면 . 그렇게 할 수 있습니까? 같은

뭔가 :

<li ng-repeat="member in item.members" ng-show="item.active">.

알려 주시기 바랍니다.

감사합니다.

+1

작성한 방식대로 제대로 작동해야합니다 ... 무엇이 문제입니까? –

+0

물론 작동 할 것입니다. 'ng-repeat'는 자신의 범위를 생성하므로 첫 번째 ng-repeat에서 사용자 정의 변수를 초기화하고 두 번째 변수와 함께 사용할 수도 있습니다. – krutkowski86

답변

0

작성한 스 니펫. 이 당신을 도울 것입니다

function myCtrl($scope) { 
 
    $scope.links = [{ 
 
    'name': "name", 
 
    'description': "description", 
 
    'members': [{ 
 
     'memname': "member name" 
 
    },{ 
 
     'memname': "member name 2" 
 
    }], 
 
    'active': true 
 
},{ 
 
    'name': "name 2", 
 
    'description': "description", 
 
    'members': [{ 
 
     'memname': "member name" 
 
    },{ 
 
     'memname': "member name 2" 
 
    }], 
 
    'active': false 
 
}] 
 

 
//$scope.links.push(link); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.22/angular.min.js"></script> 
 
<div ng-app ng-controller="myCtrl"> 
 
    <ul> 
 
     <li ng-repeat="item in links" ng-show="item.active == true"> 
 
     {{item.name}} 
 
     <ul > 
 
      <li ng-repeat = "member in item.members" > 
 
       {{member.memname}} 
 
      </li> 
 
     </ul> 
 
     </li> 
 
    </ul> 
 
</div>

희망.

관련 문제