1

作成時にすべてのモーダルインスタンスを傍受し、その約束値にバインドする方法は可能ですか、それとも現在ありますか?

これを行うために Angular デコレーターを作成したいのですが、アプリケーションのブートストラップで利用できる $modalInstance プロバイダーはなく、利用できるのは $modal だけです。

アプリケーションでモーダルが開かれるたびに、いくつかの一般的なシステム全体の操作を実行するために、これを行いたいと思います。

ありがとう

4

1 に答える 1

1

これがこのタスクの最適な解決策であるかどうかはわかりませんが、同じことをしなければならなかったときにこれを解決するために使用した方法です。service は、いくつかの便利なメソッドを持つ$modal別のヘルパー サービスを定義します。その方法$modalStackを見ることができます:getTop

app.run(function($rootScope, $modalStack) {
    $rootScope.$watch(function() {
        return $modalStack.getTop();
    }, function(newValue, oldValue) {
        if (newValue !== oldValue) {
            if (newValue) {
                console.log('opened', newValue);
            }
            else {
                console.log('closed', oldValue);
            }
        }
    });
});

デモ: http://plnkr.co/edit/sm6jGqlITxgQkRt3EHXN?p=info

于 2014-11-16T20:59:32.280 に答える