2017-02-14 23 views
2

是否有任何指導我怎麼需要我的應用程序劃分到單獨的組件?例如這是我的應用程序的一部分:應用如何劃分到組件的策略

enter image description here

現在(1)和(2)是分離的部件(其被置於其內的組分(3))。但是我發現我需要編寫很多代碼才能將消息從組件1傳輸到組件2並返回。

當用戶選擇值在組件1,我需要說的組件2重繪。當用戶閱讀組件2中的所有文章時,我需要說組件1從列表中刪除項目。

現在,我認爲這將是最好有一個組件,而不是兩個單獨的部件。

可能有一個很好的策略/諮詢/文章 - 如何分割應用程序單獨的組件?

回答

4

Angular2的整體實力是打破東西分解成可重用組件的能力。如果您正在考慮將事情分解爲多個組件,則需要問的一個好問題是,您的應用中是否會出現這樣的情況,即新組件彼此獨立存在。如果你看到重複使用的潛力,那麼你一定想分裂它們。這聽起來像是你遇到的另一個基本問題是組件交互。 Angular 2 Cookbook爲利用Services和Rxjs的組件交互提供了一個很好的例子。你可以read more about that here

就個人而言,我已經在我的角2級的應用程序使用@ngrx/store for Redux style state management。它提供了一個集中的地方來存儲所有的應用程序狀態,並且通過允許組件僅爲他們需要的數據訂閱商店並允許OnPush語義,從而大大簡化了組件交互。