Экспорт данных таблицы Dynami c в Excel из приложения Angular - PullRequest
0 голосов
/ 30 апреля 2020

Я пытаюсь экспортировать данные из динамической таблицы c с библиотекой XLSX angular, но я получаю пустые данные в полученном файле Excel. Angular Представление таблицы Table View и сгенерированный Excel generated excel. У меня есть следующая реализация. Спасибо!

  <tr>
    <th colspan="1">~</th>
    <th colspan="4">Forecast</th>
    <th colspan="4">Actuals</th>
    <th colspan="4">Delta</th>
  </tr>
  <tr>
    <th>Month</th>
    <th class="table-primary">Revenue</th>
    <th class="table-primary">Cost</th>
    <th class="table-primary">EGM</th>
    <th class="table-primary">EGM%</th>
    <th class="table-warning">Revenue</th>
    <th class="table-warning">Cost</th>
    <th class="table-warning">EGM</th>
    <th class="table-warning">EGM%</th>
    <th class="table-danger">Revenue</th>
    <th class="table-danger">Cost</th>
    <th class="table-danger">EGM</th>
    <th class="table-danger">EGM%</th>
  </tr>
  <tr *ngFor="let entity of projectEntities; let j = index" #var>
    <td *ngFor="let colDef of columnDefinition; let i = index">
      <input class="form-control" digitOnly decimal="true"
             type="text" [disabled]="isForecast(i, j)"
             [(ngModel)]="entity[colDef]"
             (ngModelChange)="calculateOnInput(j, i, colDef, entity, projectEntities);
             sumAll();
             dataHasChanged();
             totalEquality();
             totalOnRevenue();
             reaminingDifferencesToAllocate()">
    </td>
  </tr>
  <tr>
    <td>Total</td>
    <td *ngFor="let indicator of indicators; let i = index">
      <input type="text" [value]="total[indicator]" class="form-control" disabled></td>
  </tr>
</table>
// typescript method
exportData(): void {
    let element = document.getElementById('monthly-indicators');
    const ws: XLSX.WorkSheet = XLSX.utils.json_to_sheet(this.project.projectEntities);
    const wb: XLSX.WorkBook = XLSX.utils.book_new();
    XLSX.utils.book_append_sheet(wb, ws, 'Monthly Indicators inputs');
    this.fileName = 'Sheet.xlsx';
    XLSX.writeFile(wb, this.fileName);
  }

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