2016-07-14 4 views
8

애들 아, 웹 구성 요소의 상호 작용에 대한 황금 규칙은 구성 요소의 상호 작용 :Angular2 : - 이벤트/ViewChild 대 출력/입력

  • 부모 참조 직접 아이들
  • 아이들은 부모에게
  • 부모를 참조하지 않습니다 -> 어린이 : 방법을 통해이
  • 아이를 호출 -> 부모 : 이벤트

이 patte을 통해 rn은 많은 프로젝트 (YUI, JQuery, ...)에서 우리를 위해 일했습니다 Angular2는 어떻습니까?

우리가 사용해야

또는 입/출력?

첫 번째 선택이 아름답게 보입니다. @ angular2 @expert 당신은 어떻게 생각하십니까? 모든

들으, 가브리엘

+0

내 개인적인 취향은 입력/출력입니다. 입력을 통해 데이터를 자식에게 전달하고 부모가 출력을 통해 수신 대기하도록 이벤트를 내 보냅니다. –

답변

0

은 내가 많은 사람들이이 작업에 익숙 찾을 알고 당신이 각도 재료 테마를 사용하는 온걸에 느낄 수있는 좋은 방법이기 때문에 서비스 방법이 가장 좋은 것입니다 생각 구성 요소 통신에 직접 @input()@output() 및 @viewchlid 메서드를 사용할 수 없습니다.

0

귀하의 필요에 따라 다릅니다. 그냥 분명히 Outputevents은 동일합니다. 그래서 흐름은 매우 유사합니다

  • 부모 Input
  • 아이를 통해 아이에게 데이터를 전달 EventEmitter

당신은 두 가지 방법으로 의사 소통을 할 수있는 세 번째 옵션도 있습니다 Output를 통해 부모에 데이터를 전달 자식에서 부모, 부모로부터 자식 또는 심지어 하나의 구성 요소에서 다른 구성 요소로 전달됩니다. 귀하의 서비스가 Subject이고이 서비스를 주입하는 구성 요소가 대상 값을 구독하거나 업데이트 할 수있는 서비스 인젝션을 사용하고 있습니다.