Каков наилучший способ передачи функций между внутренними компонентами в AngularJS 1.5?

Мне было интересно, как лучше всего передать функции через 2 или более уровней компонентов? Нет простого способа пропустить перенос функции при использовании привязок '&'?

Вот пример использования:

angular.module('app', []).component('app', {
  controller: class AppController {
    doSomething (data) {}
  },
  template: `
    <sub-component on-do-something="$ctrl.doSomething(data)">
    </sub-component>
  `
})

PS: я использую ngRedux, поэтому такой сценарий очень распространен

РЕДАКТИРОВАТЬ:

Проблема заключается в следующем: для того, чтобы код, приведенный выше, работал, каждый контроллер внутреннего компонента выглядел бы так:

.component('subComponent', {
    bindings: {
        doSomething: '&'
    },
    controller: function SubComponentController () {
        this._doSomething = param => this.doSomething({data: param});
    },
    template: `
        <inner-component do-something="$ctrl._doSomething(data)">
        </inner-component>
    `
});

.component('innerComponent', {
    bindings: {
        doSomething: '&'
    },
    controller: function InnerComponentController () {
        this._doSomething = param => this.doSomething({data: param});
    },
    template: `
        <sub-inner-component do-something="$ctrl._doSomething(data)">
        </sub-inner-component>
    `
});

И тогда мне придется пройти вниз_doSomething вместоdoSomething непосредственно.

PS: я не использую здесь transclusion

Ответы на вопрос(1)

Ваш ответ на вопрос