$routeProvider resolve
パラメーターを使用すると、コントローラー関数に追加の依存関係を挿入できます。明示的な依存性注入宣言と組み合わせる方法は?
エカンプル:
angular.module('myModule', [])
.config(function($routeProvider) {
$routeProvider.
when('/tabOne', { templateUrl : 'tabOne.html', controller: TabOne,
resolve: {
someDependency: SomeDependency.factoryFunction
}
});
});
その後:
TabOne.$inject = [ '$scope', 'someFirstService', 'someOtherService' ];
ご覧のとおり、上記の DI 宣言により、2 つのサービスがTabOne
コントローラー (someFirstService
およびsomeOtherService
) に挿入されます。someDependency
これら 2 つは問題なく動作しますが、ルートが解決されて注入された後にのみルートを変更したいと考えてTabOne
います。Controller 関数の引数リストに単純に追加someDependency
すると、DI エラーで失敗します。
それを行う方法はありますか?