이 예가 될 것입니다 설명하는 가장 좋은 방법 :반복에서 단일 자식 컨트롤러에 액세스 하시겠습니까?
<table ng-controller="groupOfPeopleController">
<tr ng-repeat "person in peoples">
<td>{{person.name}}</td>
<td><button ng-click="load_data(person.id)">Load Data</button>
<td><div class="personData" ng-controller="personDataController"></div></td>
</tr>
</table>
내가 무엇을 찾고 있어요 것은 그 자체가 데이터 div.personData를 채우는 것입니다. 내가 좋아하는 것
// groupOfPeopleController
$scope.load_data = function(id){
$rootScope.$broadcast('load_data'id);
}
는 자식 요소 컨트롤러 personData에 특이 적으로 전달하는 데 : 그래서 groupOfPeopleController에서 함수가 load_data (ID)라고합니다.
// personDataController
$scope.$on('load_data',function(e,id){
// hopefully affect only the div inside the current loop...
});
문제는 personData의 모든 루프에 첨부된다는 점입니다. 한 사람을 클릭하면 모든 행에 영향을 미치며 모두 동일한 컨트롤러에 연결되어 있습니다.
어떻게 personData 인스턴스를 별도로 만들까요? 이 문제를 해결하기 위해 방송이 잘못 되었습니까?
우수. 고맙습니다. –