問題タブ [angularjs-injector]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 位置情報サービスを使用した angularjs インジェクター
Jasmine でいくつかの Angular.js コードをテストしています。これを行うには、Angular インジェクターが必要です。
これは問題なく動作しますが、$location を使用するコントローラーをテストするときは、それをインジェクターに追加する必要があります。
これでエラーがスローされます:
そこに $location サービスを含めるにはどうすればよいですか? ありがとう。
- - - - - - - 編集 - - - - - - - - -
多くの回答がなかったので、詳細を追加すると思いました。
これが私がテストしようとしているコントローラーです(またはその定義、すべてのコードを貼り付けるわけではありません):
元の投稿の単体テストでインジェクターを作成する方法を既に見ましたが、インジェクターを使用してコントローラーを作成する方法は次のとおりです。
これがいくつかの潜在的な答えを生み出すのに役立つことを願っています. ありがとう
angularjs - 引数 'HeaderCtrl' は関数ではありません。未定義です
AngularJS でコントローラーをテストする際に問題が発生しました。次のエラーが発生しました。
これが私のテストです:
そして、私の HeaderCtrl は次のようになります。
このコントローラーは、そのような他のモジュールで定義されたいくつかのサービスを使用しています。
そして、要求されたアプリ定義:
私は自分のビューで HeaderCtrl direclty を次のように使用します。
コントローラーがカルマによってロードされていないようですが、カルマ conf ファイルを確認すると、すべての .js ファイルがロードされています...最初に app.js をロードして、モジュールが作成されていることを確認します。
私は何か見落としてますか?私は立ち往生しています:'(
前もって助けてください:)
ヤンニグ
angularjs - AngularJS で実行時にプログラムでサービスを置き換える
テスト目的で、Web アプリが実行時に持つサービスの 1 つを置き換えたいと考えています。一部のローカル環境では利用できない外部サービスに接続するサービスがあり、コマンドを実行してモックに置き換えたいだけです。
以下を呼び出すことで、実行時に AngularJS から任意のサービスを取得できることがわかりました。
しかし、その「myService」を別のものに置き換える方法があるかどうか知りたいです。
「myService」を公開する「myServiceWrapper」を作成すると、次のようにして簡単に置き換えることができることを知っています。
しかし、すでに動作しているアプリケーションに変更を加えるのは避けたいと思います。
angularjs - 複数の (配列) 依存関係を注入する - ng
angularJs では、いくつかのロジックを実装するための複数の戦略を提供できるようにしたいと考えています。
例、利息を計算する必要があり、複数の実装があります (High、NoTax、None)
この戦略を実装する一連のサービスを注入する方法はありますか? それらを注入するサービスが正しい戦略を選択できるようにします(または、適切と思われる方法でそれらを使用します)。
補足: .NET では、税戦略が実装するインターフェイスを作成IEumerable<ITaxStrategy>
し、サービスに を挿入できます。どの JS がサポートできないか。
angularjs - Angularjs の依存性注入の順序
ファイルにフィルターを追加したところ、みんな大好きなインジェクター エラーが発生しました。トラブルシューティングを試みていますが、注射の順序に関係しているのではないかと思います。プロバイダー/サービス/などを注入する前にコンパイルする必要がある順序をどのように宣言しますか...
HTML:
app.js:
mainController.js:
JokeService は正常に動作します
JoeFilter がエラーをスローしているものです - JoeFilter.js:
メイン コントローラーでは、サービスがフィルターを必要とするため、サービスの前にフィルターを宣言します。これは正しいと思います。また、サービスの前、angular およびその他の同様の依存関係の後に、HTML でフィルターを宣言します。
完全なエラー:
angularjs - Angularjs - エラー: [$injector:unpr]
Angular UI Bootstrap モジュール、具体的には Modal プラグインを使用しようとしています。私の app-folder は次のように構成されています。
- アプリ
- スケダ
- scheda.html
- schedacontroller.js
- app.js
- スケダ
- CSS
- ...
- index.html
これはアプリのメイン ファイルであるapp.jsです。
例外....
これは、モーダル プラグインを配置するページのコントローラーです。
schedaController を含むページをロードすると、次のエラーが発生し続けます。
ありがとうございました