2017-04-24 9 views
0

私はAngularのプロジェクトを持っています。私は、私のアプリケーションの上に多くの機能を持っているすべてのモジュールを宣言する必要があることを知り、すべてのコンポーネントとサブモジュールで使用できるようになります。しかし、私は指示で特別な場合があります。私は簡単な指示を出してapp.module.tsにインポートします。指令宣言

私はより良く理解するために、この図を作っ:

enter image description here

私は別のモジュールの一部(このモジュールは、あまりにも私のapp.module.tsに宣言されている)であるコンポーネントにこのディレクティブを使用します。だから私はこのコンポーネントに私のディレクティブを入れても動作しません。しかし、私がこのサブモジュールにインポートを移動すると、動作します。

上位モジュールでは何を宣言できますか?

答えて

3

角度モジュールはテンプレートの解像度を提供します。 Angularモジュールで宣言されたコンポーネントに関連付けられたテンプレートによって使用されるネストされたコンポーネント、ディレクティブ、またはパイプも、そのAngularモジュールに宣言またはインポートする必要があります。

共有モジュールを使用して、コンポーネント、ディレクティブ、およびパイプを共有できます。

は、テンプレートの解像度と共有モジュールの詳細については、このビデオを参照してください:https://www.youtube.com/watch?v=ntJ-P-Cvo7o&t=4s

+0

プレゼンテーションはとても素晴らしいです!私はそこにいたかっただろう!私の混乱は、モジュールの継承に関するものです。私はトップモジュールで宣言されたサービスを持っていれば、そのアプリケーションに利用可能になると考えていました。これはあなたのプレゼンテーションにも当てはまります。異なるモジュールでサービスを宣言するべきではありません。そしてその指示は?同じようにサービスに適用されます。共有モジュールを持っているというコンセプトは素晴らしいです。このためにあなたの時間を取ってくれてありがとう。 あまりにもありがたいです。 –

+0

ありがとうございました!モジュールレベルで宣言されたサービスは、アプリケーションのすべてのコンポーネントで使用できます。ディレクティブは1つの特定のモジュールに宣言またはインポートされ、そのモジュール内で宣言されたコンポーネントに対してのみ使用できます。お役に立てれば! – DeborahK