0

Kendo UI Angular2 グリッドを水平方向にスクロールしようとすると、IE 11 でパフォーマンスの低下に直面しました。時々、列の数が変更される場合があります。少なくとも毎回30列あります。IE は、UI を 10 秒以上フリーズするか、クラッシュすることさえあります。

私のグリッド バージョンは 0.5.0 です。これが私のグリッド設定です:

<kendo-grid
    [data]="view"
    [scrollable]="'virtual'"
    [height]="gridHeight"
    [pageSize]="pageSize"
    [rowHeight]="rowHeight"
    [skip]="skip"
    [sortable]="{ mode: 'multiple' }"
    [sort]="sort"
    (sortChange)="sortChange($event)"
    (pageChange)="pageChange($event)">
    <template ngFor [ngForOf]="columns" let-column>
        <kendo-grid-column
            field="{{column}}"
            [headerStyle]="{'border': 'none', 'font-size': 'medium'}"
            [width]="computeWidth(column)"
            [style]="{'border': 'none', 'font-size': 'small'}">
            <template kendoCellTemplate let-dataItem>
                <div>
                    {{dataItem[column] | truncate : 75 }}
                </div>
            </template>
        </kendo-grid-column>
    </template>
</kendo-grid>

編集: グリッドを 0.6.2 まで更新します。IE と同じことで、Chrome が予想よりも長く考えていました。例はこちら

4

1 に答える 1

1

When using virtual scrolling, don't bind the grid to the complete data (thousands of rows), but only to the currently paged data. This is what makes the virtual scrolling fast -- only the currently visible data is rendered. This is shown in the virtual scrolling example in the documentation.

private loadProducts(): void {
    this.gridData = {
        data: this.data.slice(this.skip, this.skip + this.pageSize),
        total: this.data.length
    };
}

See the updated plunker snippet.

于 2016-11-24T12:24:53.257 に答える