問題タブ [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.
angularjs - $injector:unpr 不明なプロバイダー: eProvider <- e <- デバウンス
私のアプリには次のコントローラーがあり、私のマシンでは正常に動作します。本番環境にプッシュしてコードを圧縮すると、次のエラーが表示されます: Error: [$injector:unpr] Unknown provider: eProvider <- e <- debounce
. このエラーのデバッグに苦労しています。このトピックで見つけたほとんどすべての投稿は、問題が依存性注入にあることを示唆していますが、それが私のケースには当てはまらないと思います。
注: 完全なコントローラーは 200 行を超えるため、簡潔にするために関係のない部分は省略しています。
javascript - サービスをコントローラーに動的に注入する
次のようにコントローラーですべてのサービスを指定する代わりに:
$inject を使用することは可能ですか? $attrs を使用して html から仕様を取得していますが、どのサービスを使用すればよいですか。
dependency-injection - 概念: Angular 1.* のセッター依存性注入
序文-これは「ハウツー」というよりも概念的な議論です。実装する簡単な方法がある場合は、その方法に関するヒントに感謝しますが、なぜこれが不可能なのか、なぜそうでないのか、または良いアイデアではないのかについての洞察を得たいと思っています。あらゆるコメント/建設的な批判を歓迎します。
プロパティ/セッターベースの依存性注入
新しい $injector API
簡単なコントローラーの例
アンギュラランドのどこか
なぜ?
JavaScript のシンプルさが気に入っています。それは非常に順応性があり、しかも強力な言語です。しかし、JavaScript に欠けている特定の機能を求めて別のプログラミング言語から来た開発者は私だけではないと思います。そのため、私は継承 (OMG を知っています!!!) を利用して、アプリケーション開発で多くの基本クラスを構築しています。具体的には、角度コントローラーはすべて、主要な基本クラス (baseViewController、basePopupController など) から継承します。
Angular のコンストラクター ベースのDI の強制により、基本コントローラー クラスを超えて拡張する予定がある場合、継承が多少面倒になります。コンストラクターの引数は、すべてのサブクラスに引き継がれる必要があります。さまざまな種類の依存性注入を許可する方法があればいいのにと思います。
angularjs - ディレクティブへのサービス変数の注入
なので、ちょっと困っています。Injecting service から Directiveまでの以前のソリューションをすべて調べましたが、何が間違っているのか本当にわかりません。以下に示すauthServicesがあります。
彼らが提案した方法で注入しています。
私のhtmlは
私は本当にこれを間違っていると感じています。どんな助けでも大歓迎です。
angularjs - カルマ:依存関係を使用してフィルターを単体テストする方法は?
別のサービスに依存するフィルターを単体テストしようとしています。この問題に関する多くの回答を読みましたが、何も解決しませんでした。私はカルマ/ジャスミンを使用しています
次のようなconf
私のアプリケーションは次のとおりです
テスト
次のエラーが表示されます
error:[$injector:unpr] http://errors.angularjs.org/1.4.0-rc.2/ $injector/unpr?=%24serviceNameProvider
エラー: windows.inject.angular.mock.inject の宣言の場所
angularjs - Angular - wp8 プラットフォームで Ionic $injector が空です
イオンの角度で作成された単純なアプリがあります(単に「イオン開始プロジェクト」)。
そして、私の機能「実行」では、次のことを行いました。
問題は、console.log で $injector を呼び出したときに、空のオブジェクトを受け取ったため、(ファクトリを呼び出すために) 'get' を実行できないことです。
そして、IOS、Android、ブラウザではこの問題はありません... wp8 aka windows phoneだけで
ありがとう、
javascript - AngularJS 1.4.8 $injector:Modulerr モジュール エラー
私は AngularJS に比較的慣れていないため、「Uncaught Error: [$injector:modulerr]」というメッセージが表示されます。さらに、さまざまな js ファイルの最初の行でいくつかの構文エラーが発生しています。
状況を改善することはできないようですが、何か考えはありますか?
index.html
app.js
app.routes.js
angularjs - 定義直後に実行中のサービスを参照しますか?
service
すべてのリクエストにa から文字列を付けたいと思います。試み:
エラー: [
$injector:nomod
] モジュール 'Foo' は利用できません! モジュール名のつづりを間違えたか、モジュールをロードするのを忘れました。モジュールを登録する場合は、依存関係を 2 番目の引数として指定してください。
注:私はui-router
複数のファイルを使用しています。しかし1つmodule
。それが違いを生むなら。
javascript - AngularJS: 別の js ファイルをロードした後のモジュールの動的注入
私のより広い問題は、メイン Web ページで使用される JS ファイルのサイズを小さくすることです。grunt uglify を使用して縮小し、455KB から 140KB に縮小しました。
2 番目のステップとして、メイン ページで不要なファイルを削除します。したがって、最初の JS ファイルのサイズを 90KB に減らし、残りの 50KB のファイルを後でロードすることができました。
Single page application - load js file dynamic based on partial viewで言及されている Ben Thielker の loadScript 関数を使用 して、JS ファイルを動的にヘッドにロードしました。
ここでの問題は、2 番目の JS ファイルで定義されたモジュールがロードされないことです。これは、アプリの開始時に依存関係を以前に言及できなかったためです (エラーがスローされる可能性があります)。2番目のJSファイルに存在するモジュールを動的にロードしたい。
前述の loadScript のコールバック関数で以下を試しました。
しかし、上記のコードはモジュールを検出しません。angularのcreateInjector関数を調べたところ、モジュール名の最後に文字列「Provider」が追加されていることがわかりました。これが物事を台無しにしているかどうかはわかりません。
また、これは reportsApp.Grids モジュールの 1 行目です。
ここで、reportsApp.Grids は最初の JS ファイル自体に存在しますが、「ui.grid」は後でロードされる 2 番目の JS ファイルにのみ存在します。
ここで $injector.invoke 関数をどのように使用すればよいですか? またはこれに対する最善のアプローチは何ですか?