今、私はいくつかの標準コンポーネントを共通のページヘッダーにロードし、いくつかのコンポーネントを共通のページフッターにロードし、変更可能なページコンテンツをa <router-outlet>
- それのように。角2のヘッダーとフッター用フィーチャーモジュール
app.component.ts
<div> Several header components loaded and displayed here. </div>
<router-outlet>
<div> Several footer components loaded and displayed here. </div>
そのすべてが正常に動作します - 私は本当に、さらにサイトを区分することを除いて。ヘッダーとフッターには、合計約20のコンポーネントがロードされています。 app.module.ts
、app.component.ts
、またはapp-routing.module.ts
のすべての共通コンポーネントと、多くのリンクからのルートを混乱させたくありません。私は彼らを自分のフィーチャー・モジュールに移すことを好むでしょう。
共通ページヘッダーのすべてのコンポーネントをcommon-header
というフォルダに、共通ページのフッターのすべてのコンポーネントをcommon-footer
というフォルダに移行しました。 (少なくとも、appディレクトリはあまり混乱していません)
さらに、common-header.module
とcommon-footer.module
と呼ばれるモジュールを作成しました。 common-header.component
とcommon-footer.component
を作成して、それぞれのヘッダーとフッターのコンポーネントを呼び出すためにhtmlをラップします。
これらの一般的なヘッダーとフッターの機能モジュールのコンテンツをすべてのページで呼び出して表示するにはどうすればよいですか。
共有モジュールにどのようにコンポーネントを分割し、「すべてのページで呼び出しと表示...」が関連しているのか分かりません。何が問題ですか?何を試しましたか? 「すべてのページ」とは何ですか? –
サイトには多くの機能モジュールがあります。共通ヘッダーのすべての要素を1つのモジュールに入れ、共通フッターの要素を別のモジュールに入れ、すべての論理ページ上の2つのモジュールにコンポーネントの内容を呼び出して表示するだけです。明らかに、Angular2は、1つの実ページだけを持つSPAフレームワークです。私は実際のものとは対照的に仮想ページを参照しています。 –
コンポーネントがどのモジュールに入っているかは関係ありません。フィーチャモジュールの 'exports'とコンポーネントを使用するモジュールの' imports'のフィーチャモジュール(ディレクティブとパイプ) –