4

こんにちは、複数のレイアウトに切り替えたい Web ページがあります。codepen.io に似ています。angular2でそれを行う最良の方法は何ですか?

4 つのレイアウトがあるとします。*ngIf="layout1"最初のレイアウトを配置して配置し、次に2*ngIf="layout2"番目のレイアウトを配置して、というように配置できます。しかし、それは最善の方法ですか?レイアウトを変更すると、html と css の両方が変更されることに注意してください。

4

1 に答える 1

1

ngSwitch複数のオプションがある場合に便利なオプションもあります。このようにして、すべてを 1 つのコンポーネントにまとめることができます。レイアウト間の切り替えが一般的であり、1 つのユーザー セッション内で頻繁に行われる可能性が高い場合、これは良いオプションだと思います。

これが主に 1 回限りの決定である場合 (たとえば、画面の寸法に基づく場合)、次のオプションのいずれかが適している可能性があります。

DynamicComponentLoaderも使用できます。各レイアウトはコンポーネントにパックされており、現在の選択に適合するコンポーネントを追加します。http://www.syntaxsuccess.com/viewarticle/loading-components-dynamically-in-angular-2.0
も参照してください。

もう 1 つの方法は、ルーターを使用して、Url または Url パラメーターに応じてコンポーネントを追加することです。https://angular.io/docs/ts/latest/guide/router.html
も参照してください

于 2016-02-23T07:50:11.513 に答える