0

Ionic アプリケーション内にグローバル エラー処理を実装しています。エラーが発生したことを知らせる IonicPopup を受け取りたいです。errorExceptionHandler については、アラートをグローバル エラー処理として保持する既存のソリューションに基づいて、新しい構成を作成しました。

angular
  .module('MyApp', ['ionic'])
  .config(function ($provide, $ionicPopup) {
        $provide.decorator('$exceptionHandler', ['$delegate', function ($delegate) {
            return function (exception, cause) {
                $delegate(exception, cause);
                //Alert works fine
                alert(exception.message);
                //$ionicPopup will follow here
            };
        }]);
    })

これにより、すぐに次のエラーが発生しました。

angular.js:68 キャッチされないエラー: [$injector:modulerr] 次の理由により、モジュール アプリのインスタンス化に失敗しました: エラー: [$injector:unpr] 不明なプロバイダー: $ionicPopup

ここで何が欠けていますか?

4

1 に答える 1

-1

$ionicPopup を設定関数に挿入する必要があるのに、なぜ $ionicPopup を設定関数内に挿入するのですか?controller/factory/service

http://ionicframework.com/docs/api/service/ $ionicPopup/

config関数が受け入れるproviders場合、必要な場合はプロバイダーのみを注入できます...以下のようなことができます。

angular.module('myApp').config(function () {
    var injector = angular.injector(['ng']),
        ionicPopup= injector.get('$ionicPopup'),
});
于 2016-03-29T12:40:12.583 に答える