La directive angulaire n'évalue pas l'intérieur ng-repeat

J'ai la configuration suivante:

App/Directive

var app = angular.module("MyApp", []);

app.directive("adminRosterItem", function () {
    return {
        restrict: "E",
        scope: {
            displayText: "@"
        },
        template: "<td>{{ displayText }}</td>", //should I have this?
        link: function(scope, element, attrs){
            //What do I put here? I don't seem to have any
            //element to initialize (set up event handlers, for example)
        },
        compile: function(?,?,?){} //should I have this? If so, what goes inside?
    }
});

Contrôleur

function PositionsController($scope) {
           $scope.positions = [{ Name: "Quarterback", Code: "QB" },
                               { Name: "Wide Receiver", Code: "WR" }
                              ]; 
}

HTML:

<div ng-app="MyApp">
    <div ng-controller="PositionsController">            
        <table>
            <tr ng-repeat="position in positions">
                <admin-roster-item displayText="{{ position.Name + ' (' + position.Code + ')' }}"></admin-roster-item>
             </tr>
         </table>       
    </div>
</div>

C'est un exemple très simple, mais je n'arrive pas à rendre. Peut-être il y a quelque chose que les tutoriels ne sont pas à me dire, ou c'est secret Angulaire de la connaissance?

Si je retire la directive à l'intérieur de la <tr ng-repeat="..." /> et place <td>{{ displayText }}</td> au lieu de cela, il affichera tous les enregistrements.

Mais je veux la directive être plus compliqué que juste une seule <td>{{}}</td> (éventuellement) pour que je puisse réutiliser cette directive dans de multiples applications.

Donc, je suis vraiment se demander comment créer correctement une directive qui va à l'intérieur de ng-repeat? Ce qui me manque? Ce qui devrait être retiré à partir du code ci-dessus?

source d'informationauteur Mickael Caruso