AngularJS Attendre la portée de la variable à évaluer à partir de la coutume de la directive

Je suis de regarder mon chemin en AngularJS.

J'ai créé une coutume directive:

app.directive('myScroll',function(){
return {
    restrict: 'A',
    transclude: true,

    template: '<div ng-transclude></div>',
    link: function(scope , element , attrs) {

    element.addClass('scroll-pane');

    scope.$watch('tasks', function(newval, oldval){
          if ( newval  ) 
          {

            console.log(newval);
            console.log(newval.length);
        }

    });

        console.log("afer watch exper");
        console.log (tasks);



    }


  };

});

avec le code HTML suivant:

<div my-scroll>
        <ul>
            <li data-ng-repeat="task in tasks" class="task-wrapper">
                <div class="task-element">
                    <div class="name">{{task.name}}</div>
                    <div class="text">{{task.action}}</div>
                </div>
            </li>
        </ul>
    </div>

les tâches de l'objet est évalué par le biais d'un service appelé par le contrôleur ( si nécessaire, je vais poster son code).

dans la directive, code les tâches de l'objet est indéfini, car j'ai pour les tâches de la longueur d'exécuter plus de css commandes que j'ai à attendre ng-repeat pour terminer ou tout simplement attendre pour les tâches variable sera évalué.

pour quelque raison tâches est toujours pas défini à la fois à l'extérieur et à l'intérieur de l' $regarder déclaration.
je peux voir dans la console "après la montre de compé" est imprimé en premier et ensuite le "regarder", mais toujours pas de valeurs.
le newval objet a [move2:function], mais sa propriété length retourne 0, mais il maintient un tableau de ressources avec mes tâches.

ce qui me manque ici, et comment puis-je exécuter la commande, lorsque les tâches variable est évaluée?

merci pour vos aides.

OriginalL'auteur RonenIL | 2013-07-26