似乎有幾種方法去剝皮這隻貓,但我想知道最好的(實踐)以及爲什麼。更新父母的孩子的'角度方式'是什麼?
如果我想收集兒童CMP一些數據,並把它傳遞給家長CMP,我可以:
- 總結與父函數的對象,並把它作爲一個輸入 孩子,調用輸入上的函數。
- 在child-cmp中創建一個EventEmitter函數併發出結果 收集parent-cmp中的數據。
- 通過@ViewChild()訪問孩子,並直接調用它的方法 。
- 與被收集
數據我敢肯定有更多的創建ngModel(僅適用於在形式?)。對於非基於表單的組件,我覺得使用Event發佈器是最昂貴的事情。但我無法真正解釋爲什麼有一個良好的技術基礎。思考?
'@Output()'是在沒有其他選項沒有特定原因時選擇的第一件事情。共享服務是另一種選擇,尤其是當沒有直接的父母子女關係時。 –
幾乎我所想的,但爲什麼?在引擎蓋下進行了優化嗎? –
它在組件之間創建最少量的耦合。如果您想在另一個父組件中使用該子項,這是最簡單的方法。這就是所有的角度組件 - 可重用性。 –