Таблица данных teradata-ковалентная перерисовывает данные на прокрутке и страница работает медленно под углом 2+ - PullRequest
3 голосов
/ 20 июня 2019

Я использую Angular 2+ и таблицу ковалентных данных Teradata в своем проекте.У меня есть таблица, которая имеет много столбцов и 50 строк.По некоторым причинам в HTML-коде я вижу только около 12 строк и прокрутки.Когда я прокручиваю, он перерисовывает данные и показывает 12 других строк, поэтому страница работает медленно.

Существует несколько HTML:

<td-data-table
        #dataTable
        [(ngModel)]="selectedRows"
        [data]="filteredData"
        [columns]="columns"
        [selectable]="true"
        [multiple]="true"
        [sortable]="true"
        [sortBy]="sortBy"
        [sortOrder]="sortOrder"
        (sortChange)="sort($event)"
        (rowSelect)="rowSelect($event)"
        (selectAll)="selectAllEvent($event)"
        class="fixed-header">

      <ng-template tdDataTableTemplate="Id"
            let-value="value"
            let-row="row"
            let-column="column">
        <ng-container *ngIf="row['Source'] == 1; else elseTemplate">
          ...
        </ng-container>
        <ng-template #elseTemplate>
          ...
        </ng-template>
      </ng-template>

      <ng-template tdDataTableTemplate="Rate"
            let-value="value"
            let-row="row"
            let-column="column">
      ...
      </ng-template>

Как мне решить эту проблему?

Может быть, у ковалента есть какой-то флаг для рендеринга всех 50 строк одновременно без рендеринга?

1 Ответ

1 голос
/ 20 июня 2019

У меня была такая же проблема с угловым компонентом материала (шаговым двигателем), и причиной были именно анимации. Итак, у меня есть 3 решения для вас:

Решение 1, если вам не нужны анимации:

Попробуйте использовать NoopAnimationsModule вместо BrowserAnimationsModule.

Решение 2, если вы любите приключения и настроены оптимистично:

Попробуйте обновить Angular до последней версии. Я заметил огромную разницу в анимации при обновлении с 5 до 7. В этом вам может помочь инструмент обновления Angular.

Решение 3, если анимация и скорость обязательны или у вас много времени:

Вы можете попробовать использовать другую библиотеку таблиц или создать свою собственную.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...