1

jquery/flash ベースのマイク録音プラグインがあり、Angular コントローラー内で関数を呼び出してオーディオをさらに処理できるようにしたいと考えています。

ng-view 内でテンプレートをロードし、routeProvider 経由でアクセスするコントローラーを割り当てます。このテンプレートには、トップ div 要素があります。次のようにしてコントローラーにアクセスできると思いました:

e = document.getElementById("topElement");
scope = angular.element(e).scope(); 

そして、マイクのコールバック呼び出しで:

scope.$apply(function() {
    scope.functionInController(micData);
});

しかし、scope.functionInController は定義されていません。スコープ要素を調べると、取得したスコープの $$childHead 内に functionInController が実際に存在することがわかりますが、アクセスできないようです。

4

1 に答える 1

2

コールバックを次のように変更します。

scope.$apply(function() {
    scope.$$childHead.functionInController(micData);
});
于 2013-05-03T15:05:15.550 に答える