2

AngularAMD/RequireJS を使用しているときに、ルート/状態解決にサービスを挿入することは可能ですか?

ルート/状態解決を使用して、コントローラーがロードされる前にコントローラー用のデータを準備するパターンは、良い方法です。サーバーからデータをフェッチし、そのデータをサービスに保存するのに特に便利であることがわかりました。これは、AngularAMD を使用していないときに成功したことです。

AngularAMD を実装して解決にサービスを注入しようとすると、注入しようとしているサービスを参照する「不明なプロバイダー」エラーが発生します。

OtherService に対して Unknown Provider エラーがスローされる基本的な例を次に示します。

$stateProvider
  .state('home', angularAMD.route({
    url: '/home',
    templateUrl: 'home.html',
    controllerUrl: 'HomeCtrl.js',
    controller: 'HomeCtrl',
    resolve: {
      stuff: function(OtherService) {
        return OtherService.getStuff();
      }
    }
  }));

誰かがこの問題に遭遇しましたか? それが機能しない理由の解決策や説明はありますか?

この質問 - angularjs + requirejs + 依存関係の解決- は同じ問題を考慮していますが、唯一の答えは特に役に立ちませんでした。

4

0 に答える 0