2017-05-11 3 views
0

角度2アプリでngx-datatablesを使用しようとしています。私はエラーを取得しています https://github.com/swimlane/ngx-datatable/blob/master/demo/basic/filter.component.ts :私は、たとえば、次の試してみました私は、フィルタボックスに入力したときに「未定義のプロパティを設定する 『オフセット』することはできません」。私はそれを可能な限りストライプし、何が間違っているかを調べるために行をハードコードしましたが、わかりません。どんな助けもありがとうございます。ngx datatables 'フィルタリング時に' offset 'が' undefinedのオフセット 'を設定できません。

コンポーネント:

import { Component, ViewChild } from '@angular/core'; 
import { DatatableComponent } from '../../../node_modules/@swimlane/ngx-datatable/src/components/datatable.component'; 


@Component({ 
    selector: 'app-school-list', 
    template: ` 
    <input type='text' 
     placeholder='Type to filter the name column...' 
     (keyup)='updateFilter($event)' /> 
    <ngx-datatable 
     #table 
     [columns]="columns" 
     [footerHeight]="50" 
     [limit]="5" 
     [rows]='rows'> 
    </ngx-datatable> 
    ` 
}) 

export class SchoolListComponent { 
    temp = []; 
    columns = [ 
     { prop: 'name' }, 
     { name: 'Gender' }, 
     { name: 'Company' } 
    ]; 
    rows = [ 
     { name: 'Austin', gender: 'Male', company: 'Swimlane' }, 
     { name: 'Bobby', gender: 'Male', company: 'KFC' }, 
     { name: 'Christina', gender: 'Female', company: 'Burger King' }, 
     { name: 'Dustin', gender: 'Male', company: 'Swimlane' }, 
     { name: 'Ellie', gender: 'Female', company: 'KFC' }, 
     { name: 'Flower', gender: 'Female', company: 'Burger King' }, 
     { name: 'Gordon', gender: 'Male', company: 'Swimlane' }, 
     { name: 'Houston', gender: 'Male', company: 'KFC' }, 
     { name: 'Ian', gender: 'Male', company: 'Burger King' } 
    ]; 

    @ViewChild(DatatableComponent) table: DatatableComponent; 

    constructor() { 
     this.temp = this.rows; 
    } 

    updateFilter(event) { 
     const val = event.target.value.toLowerCase(); 

     const temp = this.temp.filter(function (d) { 
      return d.name.toLowerCase().indexOf(val) !== -1 || !val; 
     }); 

     this.rows = temp; 
     this.table.offset = 0; 
    } 
} 
+0

あなたの 'AppModule'を追加できますか? 'this.table'は未定義のようです。そして、私は奇妙なインポートを参照してください。 '@ swimlane/ngx-datatable'から '{DatatableComponent}をインポートするべきではありませんか? – yurzui

+0

実際に表示されます。https://plnkr.co/edit/eLuuvtN1NzoIZWhqGCyy?p=preview – yurzui

答えて

0

@yurzui感謝。 インポートが間違っていました。この例では、 "from '../../src/components/datatable.component';"です。

私は私のことをやろうとしましたが、私のフォルダはいくつかのディレクトリでした。彼らの例のどれもがこのようにしません。彼らはより良い文書を必要とします。

関連する問題