信頼できるバックボーンからAngular2に移動することを検討しています(私の上司は新しいおもちゃで遊んでいます)。いくつかのテストを行いましたが、私はこの簡単な質問に対する答えを見つけることができません:Angular2、コンポーネント間でモデルの同期を維持する
2つのコンポーネントを2つのコンポーネントで同期させておくことはできますか?例:サイドバーにユーザーのリストが1つのコンポーネントであり、そのユーザーを別のコンポーネントである「メインページ」で編集するフォームがあります。
サイドバーはコレクションを表示する責任があり、フォームはそのモデルの取得を担当します。モデルが更新されると、変更をサイドバーに反映させ、サーバーを再実行する必要はありません。
SpinJSはこれを行い、バックボーンで(モデルクラスとIDに基づいて)同じことを達成するためにイベントを使用して何かをハッキングしましたが、Angular2にはそれを扱うネイティブな方法があるのだろうか? そうでなければ、このような振る舞いをどのように実装すればよいでしょうか?
ありがとうございました。
EDIT:
私はこのPlunkerで私のテストファイルを追加しました:ヒーローを選択し、http://plnkr.co/edit/jIdnu68ZDMDSFJkomN3Y
まず、および「詳細の表示」をクリックし、これは、メモリ内のサーバへにhttp.get
要求を行いますヒーローを入手してください。
第2に、「Give sword」をクリックすると、選択したユーザーに武器が追加されます。 テスト目的のために、既にロードされたユーザーを使用する代わりに、http.get
を使用して同じものを再度要求します。
テキストボックスの名前を変更すると、2番目のインスタンスの名前は更新されません。
あなたは何らかの理由で主人公の現在のインスタンスを使用することはできないと想像しなければなりません。私はサーバーから再度それを要求します。
「あなたがテキストボックスで名前を変更すると、2番目のインスタンスの名前は更新されません。どこを更新する必要がありますか?武器の「所有者」ですか? –
SpineJSと同じように同期させる方法があるかどうかは、同じクラスで同じIDなので正解です。 – Growiel