2017-09-27 17 views
0

在我的Angular應用程序中,我輸入了一組不同的對話框模式,其中輸入了表單數據。一些數據組以很多不同的形式重複(例如:姓名,電子郵件,地址等人員信息)。我想將表單部分分離爲一個組件,然後在不同的模式組件中重用它。在不同的角度組件中重用表單數據?

標記部分很簡單,但我不確定如何將數據傳遞給其父組件。取決於表單數據組件將被添加到哪個模式組件,不同的事情會發生在提交按鈕上。

我要尋找一個教程或某種的我怎麼能做到這一點

+0

地點不是在'form.component.html'但在所有其他'一些-component.component.html提交按鈕' –

+0

這很有道理,但是如何將form.component.html中輸入的數據傳遞給some-component.html? – cooper

+0

你的FormControl對象擁有狀態 - 只要得到它並做任何事情 –

回答

1

關於您的問題關於高層解釋「如何通過在form.component.html進入某些成分的數據。 HTML」

如果您form.component.html是父組件一些-component.ts的子組件的模板,你可以很容易地按照官方文檔(link here)。這就是說:

  1. 對於子組件:

    • 你需要它標記爲輸出

      (發射可能比一個布爾別的數據類型)的EventEmitter財產
      @Output() customEvent = new EventEmitter<boolean>(); 
      
    • 某種方法發出我們的活動

      myMethod() { 
          this.customEvent.emit(someData); 
      } 
      
  2. 當你設置好你的子組件,讓我們來看看它的父:

    • 你在你的父模板需要一個屬性,它對應於您@Output()屬性的名稱(在這裏,我們給命名爲「自定義事件」給我們的屬性)

      <child-component (customEvent)="handleEvent($event)"></child-component> 
      
    • 然後,您可以觸發時處理該事件

      handleEvent(data) { 
          // do something 
      } 
      

嘗試看看這個鏈接,一個完整的例子:http://learnangular2.com/outputs/