簡體   English   中英

帶有父/子組件的Angular 2/4管理表單CRUD

[英]Angular 2/4 managing form CRUD with parent/child components

  • 我有一個父級和一個子級組件,其中父級是使用* ngFor的重復子級的列表。

  • 每個孩子都通過angular的@Input功能接收一個對象,而孩子模板是一種使用angular 2方式綁定來讓您編輯對象屬性的表單。

  • 父級不一定是子級組件的通用容器/列表,也不會再用於其他列表。

  • 父級使用注入的服務來檢索正在使用的數據列表。

我的問題是, 保存表單時誰應該調用update函數? 孩子應該注入服務,並在服務上調用更新功能嗎? 是否應該將其傳遞給父級進行更新? 孩子應該從頭開始閱讀嗎?

我知道這可能會引起別人的觀點,所以我正在尋找一個與Angular團隊旨在最佳實踐相吻合並且也符合以下條件的答案:

  • 可讀性,性能和設計之間的均勻分配。
  • 全面且與常用軟件設計模式相關。

如果需要任何其他信息,請讓我知道,謝謝!

我要說的是,如果父組件使用某種服務(最有可能)檢索子代,則可能相同的服務也處理保存操作,因此應該由父組件負責調用保存操作。 在這種情況下,孩子應該只生成事件以通知父母用戶打算保存此特定項目的意圖。 這樣,由於只有一個(父)組件負責服務上的數據操作(一個關注點),而孩子僅負責顯示和編輯項目(另一個關注點),因此可以更好地分離他們的職責。

也許這僅取決於更新按鈕的放置位置。 如果在子組件中,則從子組件調用服務,否則從父組件調用服務。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM