module.directive('collection', function () {
return {
restrict: "E",
replace: true,
scope: {
collection: '='
},
template: "<ul><member ng-repeat='member in collection' member='member'></member></ul>"
}
});
module.directive('member', function ($compile) {
return {
restrict: "E",
replace: true,
scope: {
member: '='
},
template: "<li>{{member.title}}</li>",
link: function (scope, element, attrs) {
if (angular.isArray(scope.member.children)) {
$compile('<collection collection="member.children"></collection>')(scope, function(cloned, scope){
element.append(cloned);
});
}
}
}
});