2016-03-21 4 views
1

デバッグ中に特定のモジュールに「ok」と尋ねると非常に便利です。を知っていますか?モジュールは基本的にコントロールコンテナを逆にしているため、明示的に物事(工場、値、コントローラなど)を登録することが絶対に可能です。私はそれを行う方法を理解することができません特定のモジュールに登録されているものをすべて見る方法

+1

モジュールの '_invokeQueue'プロパティは、登録されたアーティファクト(アーティファクト:=コントローラ、ディレクティブ、フィルタなど)ごとに1つのエントリを含みます(例えば、angular.module( 'xxx')')。各エントリは配列で、最初のメンバ(文字列)はアーティファクトが何であるかのアイデアを与えます:フィルタの場合は$ filterProvider、コントローラの場合は$ controllerProviderです。エントリ配列の最後のメンバーは別の配列で、インデックス0にあるアーティファクトの名前を与えます。 '_invokeQueue'プロパティはおそらくプライベートであることを意図しているので、事はいつでも変更できます。 –

答えて

1

モジュールで.requiresを呼び出す場合は、どのような依存関係があるのか​​を教えてください。私は単体テストでこれらを監視し、何らかの形で削除された場合に問題を防ぐのに役立ちます。

var appModule = angular.module('yourMod'), 
deps = appModule.requires; 

depsの値は、モジュールの依存関係を含む配列になります。

Angularの他の部分については、インジェクタの.has()メソッドを呼び出し、必要な依存関係がプロバイダに注入されているかどうかを確認できます。ドキュメント:https://docs.angularjs.org/api/auto/service/ $ injectorほとんどのものが$ injectorを扱うので、これは実行可能でなければなりません。

関連する問題