2017-11-02 2 views
0

@Input에 의해 다른 구성 요소의 RowData를받는 테이블이있는 구성 요소가 있습니다. 현재 테이블의 인스턴스를 어떻게 얻을 수 있습니까?NGX-Datatables. 현재 테이블 인스턴스를 얻는 방법?

export class GridComponent implements OnChanges { 
@Input() inputData: [object]; 

columns1 = [ 
    { prop: 'name' }, 
    { name: 'Gender' }, 
    { name: 'Company' } 
]; 
} 
+0

현재 테이블의 인스턴스를 얻는 것은 무엇을 의미합니까? – eddyP23

+0

또한'[object]'실제로 유효한 유형입니까? 난 당신이 입력 데이터에 대한 클래스를 만들려면 여기에, 그래서 당신은 당신의 코드에서 타입 유추를 얻을 것이라고 생각합니다 – eddyP23

+0

나는 현재 테이블의 모든 데이터를 포함하는 일부 개체를 의미합니다. @ViewChild (DatatableComponent)와 같은 것을 사용하려고했습니다. table : DatatableComponent; 그러나 한 페이지에 두 개 이상의 테이블이있는 경우 '테이블'에는 첫 번째 테이블 데이터 만 포함됩니다. – Ivan

답변

0

@Viewchild TS 내 HTML

<ngx-datatable 
     class="material" 
     [rows]="inputData" 
     [columns]="columns"> 
</ngx-datatable> 

그리고 구성 요소의 일부

올바른 방법입니다,하지만 당신은 그것을 다른 방법을 사용한다.

다음은 원하는 작업입니다.

HTML :

<ngx-datatable 
     #firstTable 
     class="material" 
     [rows]="inputData" 
     [columns]="columns"> 
</ngx-datatable> 

<ngx-datatable 
     #secondTable 
     class="material" 
     [rows]="inputData" 
     [columns]="columns"> 
</ngx-datatable> 

Component.ts : http://learnangular2.com/viewChild/

추가 :

export class GridComponent implements OnChanges { 
@Input() inputData: [object]; // This line doesn't look right 

@ViewChild('firstTable') myTable1: DatatableComponent; 
@ViewChild('secondTable') myTable2: DatatableComponent; 

columns1 = [ 
    { prop: 'name' }, 
    { name: 'Gender' }, 
    { name: 'Company' } 
]; 
} 

당신은 참조 할 수 있도록이 페이지에서 좀 걸릴 수 있습니다 다음과 같이 필요에 따라 모든 요소를 ​​선택하는 @ViewChildren을 사용할 수도 있습니다. https://angular.io/api/core/ViewChildren

+0

감사합니다. – Ivan

+0

@ Иван이 도움이 되었다면 답을 수락하는 것을 고려하십시오. – eddyP23

관련 문제