私は新しく作成したAngular2アプリケーションのクラス図を作成する必要があります。私は、C#で書かれた.NETアプリケーションのクラス図を作成する基本を知っていますが、Angular2アーキテクチャに基づいたアプリケーションを作成したことはありません。クラス図Angular2、注入とルーティングを使用するときの関連性または依存性
シナリオ1:サービスに依存クラス
コード:
@Injectable()
export class AmendmentAccountComponent implements OnInit
{
constructor(private accountService: AccountService)
{
}
}
は私がAccountComponentと呼ばれるコンポーネントを作成したとしましょう。このコンポーネントには、コンストラクタに注入されるAccountServiceというサービスが必要です。今、私は依存関係(アソシエーションではない)をAccountComponentからAccountServiceに引き出すことを考えています。この依存関係は、コンポーネントが実行される前に必要です。それはこのarticle
にどのように見えるかに比べ
依存性は、依存関係は、クラス図で(私が説明するもの)を示すのが正しい方法は何ですか?
シナリオ2:コンポーネントは、ルーティング(RouteConfig)
は私がPageComponentという名前のコンポーネントを持っていると言うことができますを使用しています。それは同じ名前のクラスを持っています。ここで下RouteConfigコードに憤慨ようにコンポーネントは、いくつかのルーティングを得た:
@RouteConfig([
{ path: '/', name: 'Bookings', component: BookingsComponent },
{ path: '/bookings', name: 'Bookings', component: BookingsComponent, useAsDefault: true },
])
だから、このコンポーネントの子がBookingsComponentです。この関係をクラス図でどのように描くべきですか?通常の関連付けだけで?
誰かが助けてくれることを願っています。特にシナリオ2では、どのように描くのか分かりません。
2)あなたRouteConfig
は、連想配列の配列である:
つまり、PageComponentがルーティングを使用して router-outlet>を定義して子コンポーネントに到達すると、依存関係を使用する必要があります。 –
Mikkel
オブジェクト(クラスのインスタンス)がリンクされている場合はアソシエーションを使用し、そうでない場合は依存関係を使用します。 Angularの用語で "リンクされた"という意味は議論の余地がありますが、PageComponentクラスがBookingComponentのインスタンスを参照するフィールド(メンバ、属性、プロパティという名前)を持つ場合、 PageComponentからBookingComponentを指す関連付け、そうでない場合は依存関係を使用する。 –
さて、助けてくれてありがとう。私は子供のコンポーネントが重要で、を使っているので、結局それを結びつけることになった。 –
Mikkel