関数ul
内のすべての要素にアクセスできるように、ディレクティブの下に構造化する方法。link
以下のコードでは、elm
(コンソールへのログ) を見ると、コメント タイプで、ul は兄弟です。elm
ul が関数内の子ノードになるようにディレクティブを構成するにはどうすればよいですかlink
(ディレクティブが接続されている場所)。それが不可能な場合、すべての兄弟を取得する方法。したがって、ネストされたリスト (ul、li) をレンダリングしたいのですがul
、リンク関数でそれぞれにアクセスする必要もあります。
助けてくれてありがとう。
[comment, ready: function, toString: function, eq: function, push: function, sort: function…]
0: comment
baseURI: "http://run.plnkr.co/PSOXzsCDf5Re0e4S/"
childNodes: NodeList[0]
data: " ngRepeat: d in data "
firstChild: null
lastChild: null
length: 21
localName: null
namespaceURI: null
nextElementSibling: ul.cont.ng-scope
nextSibling: ul.cont.ng-scope
ng-1379388042747: 6
nodeName: "#comment"
nodeType: 8
nodeValue: " ngRepeat: d in data "
コード: http://plnkr.co/edit/oGwJNN?p=preview
'use strict';
var app = angular.module('Directives', []);
app.controller('MainCtrl', function ($scope) {
$scope.data = [
{
cont: {id:1},
children:[
{id:1}, {id:2}, {id:3}
]
},
{
cont: {id:2},
children:[
{id:1}, {id:2}, {id:3}
]
}
];
});
app.directive('test', function ($timeout) {
return {
template: '<ul class="cont" ng-repeat="d in data">' +
'<li class="ch" ng-repeat="node in d.children">' +
'<span class="span2">' + 'id - {{node.id}}' + '</span>' +
'</li>' +
'</ul>',
replace: true,
restrict: 'E',
scope: {
data: '=',
conf: '='
}
,
link: function (scope, elm, attrs) {
console.log(elm)
}
};
});