2017-04-19 1 views
0

으로 객체를 방출하는? 어떤 아이디어 야? 미리 감사드립니다.방법 I은 EventEmitter을 가지고 있고 아래와 같이 객체를 방출하고 그 값

+2

이 질문을 이해할 수 없습니다. 당신이 방출하고자하는 것은 무엇이든, 그냥 내 보내십시오. "내 데이터"란 무엇을 의미합니까? * 값을 가진 객체를 방출하는 방법 * 객체 ** IS **의 값. (BTW,'next' 대신에'emit'을 사용하고 싶지 않으십니까?). –

+0

미안 내 데이터 의미, 데이터의 매개 변수에 전달 된 '데이터' – blackdaemon

+0

그래서 만약 내가 emillData 내 emister '내 데이터를 emill'나는 waill 개체가 정확하지만'항목'빈 것입니다. 부모 나 리스너에게 전달할'_cellClicked' 함수의 매개 변수 인'data'를 전달해야합니다. – blackdaemon

답변

0

데이터를 이벤트 처리기로 다시 보내려면 다음과 같이 작성할 수 있습니다. this.cellClick.emit ({data : emitData, orderData : someData});

+0

나는 두 개의 분리 된 long을 전달하려고한다. emitData 만 보낼 수는 있지만, 데이터는 아이템이 될 것이다. – blackdaemon

2

우리가 각도 EventEmitter API를 따르십시오 : https://angular.io/docs/ts/latest/api/core/index/EventEmitter-class.html

  1. 변경 EventEmmiter 선언이 사용하기를 : EventEmitter
  2. 당신이 emmit 방법을 사용할 필요가 데이터를 전송합니다.

코드는 다음과 같아야합니다

@Output() cellClick: EventEmitter<any> = new EventEmitter(); 
private _cellClicked(data: any){ 
     let emitData: any = { 
     colId: data.column.colId, 
     rowId: data.node.id, 
     item:{} 
     }; 
     if (emitWithdata){ 
      emitData.item=data; 
      this.cellClick.emit(emitData); // Here i need to send my data also, and it need to append to the value Data.item=data not just the Data object. 
     } 
} 
+0

항목은 선언에서 빈 객체이다. 데이터는 emitwithdata condetion 안에 추가됩니다. – blackdaemon