ディレクティブは、独立して、指令にコントローラからデータをバインドするために使用される単離された範囲を提供します。だから、それぞれのディレクティブを通じて結合双方向のデータを使用してディレクティブにコントローラからスコープを渡すことができます。ここではそのいくつかの例です:
まずあなたは、コントローラで範囲を初期化する必要があります。その後、
.controller('playlistController', function() {
$scope.songType = 'pop';
}
と結合双方向のデータで隔離スコープを経由して各ディレクティブに範囲を渡します各ディレクティブの内側:
.directive('playlistManaging').function({
return {
scope: {
songType: '='
},
controller: function() {
//some logic here
}
}
})
.directive('songList').function({
return {
scope: {
songType: '='
},
controller: function() {
//some logic here
}
}
})
次にHTML属性要素を通してスコープを接続します。
//This is just a quick sample, the best solution is to define the controller inside angular routes
<div ng-controller="playlistController">
<playlist-managing song-type="songType"></playlist-managing>
<song-list song-type="songType"></song-list>
</div>
希望します。
私は第三の方法は、 – rkalita
は、スコープのデータに分離されたスコープディレクティブを使用し、「=」私のために最善の方法だと思い、ありがとう:https://blog.umur.io/2013/07/02/angularjs-ディレクティブ-使用して、孤立スコープ付き-属性/ –
はい、私はディレクティブで約2ウェイバインディングを知っている:) – rkalita