1

ng-viewが変更されるたびに共通のコントローラーを呼び出す方法はありますか?つまり、新しい$routeがロードされるたびに共通のコントローラーが呼び出されるようにしたいのです。

4

1 に答える 1

3

さまざまなルートにカスタムコントローラーを指定した場合、何らかの継承を使用して常にベースコントローラーのメソッドを呼び出さない限り、常に呼び出される共通コントローラーを指定できることを私が知る方法はありません。

別のアプローチは、ルートサービスがブロードキャストするイベントをサブスクライブすることです。

例:

function MyController($rootScope, [...]) {
    $rootScope.$on('$routeChangeSuccess', function (current, previous) {
        // ...
    });
}

利用可能なイベントとそのパラメータのリストはここにあります。

$rootScopeAngularのバインディングメカニズムの仕組みのおかげで、ビューのバインディングで使用できるプロパティやメソッドなどを追加することもできると思います。現在のスコープで見つからない場合は、ルートスコープまで親などをチェックします。

于 2012-10-11T10:53:48.847 に答える