2
ネストされたディレクティブ間の通信
ディレクティブ間で通信する方法はかなりあるようです。ネストされたディレクティブがあるとします。ここでは、内側のディレクティブが外側に何かを伝える必要があります(たとえば、ユーザーによって選択されます)。 <outer> <inner></inner> <inner></inner> </outer> これまでにこれを行うには5つの方法があります require: 親ディレクティブ innerディレクティブが必要になることがありouter、そのコントローラ上のいくつかのメソッドを公開することができディレクティブを、。だからinner定義では require: '^outer', link: function(scope, iElement, iAttrs, outerController) { // This can be passed to ng-click in the template $scope.chosen = function() { outerController.chosen(something); } } そして、outerディレクティブのコントローラーで: controller: function($scope) { this.chosen = function(something) { } } $emit 出来事 innerディレクティブができる$emitイベント、outerディレクティブは経由して、に応答することができます$on。そのため、innerディレクティブのコントローラーで: controller: function($scope) { …