2017-08-14 82 views
-2

嗨我想從第二個組件到第一個組件扔一個事件,但我不能在我的第一個組件中獲取事件,但我能夠趕上應用程序組件中的事件。是否有任何限制,如我們只能從兒童到應用程序組件的事件。事先感謝。問題與角度@Output

enter image description here

我捕捉事件這樣

<second-app (newEvent) = "onEmit($event)"></second-app> 

請找到該文件夾​​結構:

  second.component 
     first.component 
app.component 

回答

0

您只能使用@Output事件處理之間的通信一個嵌套的(子)組件及其父組件。

要在兄弟組件或不相關組件之間進行通信,可以使用服務。我這裏有一個例子服務:https://blogs.msmvps.com/deborahk/build-a-simple-angular-service-to-share-data/

的plunker是在這裏:https://plnkr.co/edit/KT4JLmpcwGBM2xdZQeI9?p=preview

的服務基本上是這樣的:

import { Injectable } from '@angular/core'; 

@Injectable() 
export class DataService { 
    serviceData: string; 
} 
+0

感謝它幫助我理解的侷限性> –