0

半分が角型jsで半分がajaxのような平面jsである角型アプリがあります。では、関数パラメーターとして渡さずに、その関数内で $location を使用するにはどうすればよいですか。

function x() {
   $location.path('/error').replace();
}

今、私$locationは通常のJavaScript関数内で使用する方法を知りたい. 基本的に、少なくとも 20 か所から呼び出されている関数があります。その関数では、replacestate を実行したいと考えています。

4

2 に答える 2

1

angular.injector外部からプロバイダーにアクセスして提供する使用が必要です。

angular.injector(['app']).get('$location')

詳細については、このSO回答を参照してください

アップデート

要素にインジェクターを直接適用すると、そのモジュール内に存在するすべてのサービスにアクセスできます。

angular.element('body').injector().get('$location'); //body can replace by your element.
于 2015-06-08T10:23:03.377 に答える