2017-11-02 13 views
0

私は@Inputによって別のコンポーネントからRowDataを受け取るテーブルを持つコンポーネントを持っています。どのように私は現在のテーブルのインスタンスを取得できますか?私のhtmlNGX-Datatables。どのように現在のテーブルのインスタンスを取得するには?

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

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

現在の表のインスタンスを取得することはどういう意味ですか? – eddyP23

+0

'[object]'は実際に有効な型ですか?私は入力データ用のクラスを作成したいと思うので、あなたのコードに型推論を得るようにしてください。 – eddyP23

+0

現在のテーブルのすべてのデータを含むオブジェクトを意味します。 @ViewChild(DatatableComponent)テーブルのようなものを使用しようとしました:DatatableComponent;しかし、1つのページに2つ以上のテーブルがある場合、 'table'には最初のテーブルデータのみが含まれます。 – Ivan

答えて

0

@Viewchild TS

<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

関連する問題