私は2種類のコンポーネントを持っています。どちらのみ使用とHTML5キャンバス要素を含むが、チャート上に異なるタイプのデータを表示する必要がありますバックグラウンドアプリケーションロジックの最適なソリューションは?
- 成分A(しか1これらの)
- 成分B(0これらの4 )
両方のコンポーネントでは、2つのデータセットの最初のデータエントリのdateTimeが必要ですが、最後のエントリのdateTimeは、それぞれのデータセットから得られます。
成分AがコンポーネントB.
からその最初のエントリの日付を必要とする現在、私はこのようにそれを行う:
成分Bは、独自のデータセットから日付の限界を見つける方法があります。オブザーバーパターン&の科目を使用して、返された日付をサービスを通じてコンポーネントAにブロードキャストします。
この問題は、カップリングが突然かなり緊密になることを意味します。コンポーネントAを最初に初期化することはできません。なぜなら、最初にBを計算する必要があるからです。どちらのコンポーネントも理想的には、初期化してデータを同時に表示/共有し、それを継続する必要があります。たとえば、ユーザーが1つのチャートをスクロールすると、他のすべてのコンポーネントもスクロールする必要があります。
これは、これらのコンポーネントの上に余分なレイヤーを追加したかった理由です。もしそうならコントローラ。
でも、私は最高の何を把握することはできません。
- 入力などの外部データを取ることができ、共有サービスを?
- コンテナコンポーネントですか? (トランスクルー)
別の成分、成分C、& Bはの子であること?
私はまだAngular 2が新しくなっていますが、将来のメンテナンス/開発にはどのアプローチが最適かを知るのは難しいですか?
Iは、親のような別の通常のコンポーネントを作成するに向かって引かれ、そしてこのコンポーネント送信を有し、必要に応じてその子(& B)に/からデータを受信されています。
「ベストプラクティス」と空の「ロジックシェル」のようなコンポーネントを使用することができるかどうか不確かです。私はここでそこそこ読んでみましたが、たくさん見つけましたが、私の質問に正確な答えを得ることはできません。この知識をすべて理解して自分自身で答えるまでには時間がかかりますので、誰かが私に助けを与えることができればと願っています。
PS:私の角のあるアプリケーションは、より大きなアプリケーションでは子コンポーネントになり、他の親のcompからそのデータを取得します。
マイロジックはHTML5、キャンバス要素にデータを描画するために、JSONデータセットを検索/操作に関連しています。サービスを利用できるはずですが、JSONデータを入力としてサービスに渡すのに問題がありました。 お返事ありがとうございました。サービスソリューションをもう一度試してみます。 – PDAWG
メソッドとパラメータを定義するだけです。あなたのサービスには注入可能なコンストラクタパラメータが含まれているだけです – mbnx
私は答えを更新しました。 – mbnx