AngularJS がディレクティブテンプレート内の DOM 要素にアクセスする 質問する

AngularJS がディレクティブテンプレート内の DOM 要素にアクセスする 質問する

ディレクティブ テンプレート内で DOM 要素を選択する、より「角度のある」方法はありますか? たとえば、次のディレクティブがあるとします。

app.directive("myDirective", function() {
    return {
        template: '<div><ul><li ng-repeat="item in items"></ul></div>',
        link: function(scope, element, attrs) {
            var list = element.find("ul");
        }
    }
});

<ul>jQuery スタイル セレクターを使用して、テンプレートでレンダリングされたDOM 要素を取得しました。これを行うより良い方法はありますか?

ベストアンサー1

要素を選択するのにこれより「角度のある方法」はないと思います。例えば、最後の例でこの目標を達成する方法を見てください。この古いドキュメントページ:

{
     template: '<div>' +
    '<div class="title">{{title}}</div>' +
    '<div class="body" ng-transclude></div>' +
    '</div>',

    link: function(scope, element, attrs) {
        // Title element
        var title = angular.element(element.children()[0]),
        // ...
    }
}

おすすめ記事