2016-11-13 16 views
1

Angular 2のコンポーネントは非常に使いやすいですが、私たちが作成しているアプリケーションに適した独自のHTML要素を書き留めることができますが、Angular 2を使い始めているので、間違って使っているようです道の周りに。角度2のコンポーネントを正しく決定する方法は?

私がコンポーネントを使用してきた方法、および他の人のように見える方法は、コンポーネントとビューの間に1-1の対応関係を作ることです。

つまり、アプリの各ビューでは、コンポーネントを1つ作成し、ルータを使用してアクティブコンポーネントをトリガーします。この中のSO

1は、このような要素だろう設定:

  • ダッシュボードコンポーネントを - それはダッシュボード・ビュー
  • ユーザー・プロファイル・コンポーネントである - それは、ユーザープロファイルビュー
  • 販売リストコンポーネントである - それは販売リストビューは
  • 販売エディタコンポーネントである - それは、新たな販売を追加したり、1
の更新の両方に使用、販売エディタビューであります

など。つまり、これは機能しますが、コンポーネントを使用するのは間違った方法だと感じています。どうにかしてコンポーネントはそれよりも細かくなるはずです。

角度2でコンポーネントでなければならないものを正しく決定する方法はありますか? 1つのコンポーネントやビューを実際に1-1マッピングする必要がありますか?そうでない場合、構築する必要があるコンポーネントを決定する正しい方法は何ですか?

答えて

0

この質問は主に意見に基づいており、SOには適していません。コンポーネントを構築する際の

あなたの上記のリストは右である、

しかしコンポーネントは、多くのコンポーネントにゼロで構成することができます。

https://github.com/angular/material2を見ると、タブ、メニュー、ダイアログなどの複雑なコンポーネントへの入力要素、ボタン、ツールチップなどの単純なコンポーネントがあることがわかります。

クラス設計と同様に、1つのことを行うコンポーネントを構築し、これをうまく実行します。次に、この基本的なコンポーネントを使用して、より複雑なコンポーネントを構築します。

0

大体の目安は重複を避けることです。コードをコピーして貼り付けることがわかった場合、そのコードをコンポーネントに抽出します。

もう1つのルールは単純です。コンポーネントクラスが大きすぎる場合は、より小さな独立した部分を分割します。

関連する問題