これはちょっとトリッキーなので最初ハマりそう。 まずdirectiveの呼び出し側は以下のように書く。
<directive ng-repeat = "item in stuff" callback = "callback(data1, data2)"/>
directiveの定義では以下のようにしてcallback関数を受け取る。
scope { callback: '&' }
callbackを呼ぶ時は以下のように一つのオブジェクトに引数を入れて渡す。
scope.callback({data1:"some value", data2:"some value"});`
これ実装した時、callbackの名前が一致して無くて親画面にデータを渡せないバグでハマッた。。 HTMLに書く箇所はTypescriptの型チェックが効かないから気をつけないとね。。
参考: