0

独自のテンプレートを持つ、かなり単純な Angular ディレクティブがあります。ただし、admin === true一部の要素の一部のプロパティを変更したい場合、たとえばそれらをui-sortable.

app.directive('members',function(){
return {
    restrict: 'A',
    template: '<h4>{{title}}</h4>'+
  'admin? <span>false</span>' +
        '<ul ng-model="list">' +
        '<li ng-repeat="member in list">' +
        '   {{member.name}}' +
        '</li>'+
        '</ul>',
    transclude:true,
    scope: {title:'@',list:'=',admin:'@'},
    link: function ($scope,$element,attrs) {
  if ($scope.admin) {
        $element.find("span").html("true");
          $element.find("ul").attr("ui-sortable","");
  }
    }

};
})

を使用して、$element.find("span")それが見つかっているかどうかをテストします。admin要素の属性から分離スコープに引き込まれますが、まだ通過しません。

フィドルはこちら: http://jsfiddle.net/zqM4Z/4/

分離スコープが関数内で使用できないように見えますか?link

4

2 に答える 2

0

スコープをウィンドウにグローバルに公開することは、デバッグの目的で非常に役立つことがわかりました。

window.scope = scope; // or $scope from controller/run

その後、開発者ツールで調べることができます。

于 2013-09-25T08:22:45.010 に答える