Angular: 8 Экспорт в Excel учитывает тип данных чисел как текст - PullRequest
0 голосов
/ 26 февраля 2020

У меня есть требование, когда нужно скачать шаблон с именами столбцов и нужно отформатировать тип данных для некоторых столбцов, так как вводятся четные числа. Я использую лист angular JS js -xlsx для экспорта в Excel.

var jsonData = [];
jsonData.push({ "Product Name": "\0", "Barcode": "\0", "Serial Number": "\0", "Grid Number": "\0" });
this.exportExcel(jsonData, "ProductTemplate.xlsx")
---------------------------------------------
import * as FileSaver from 'file-saver';
import * as XLSX from 'xlsx';
fileType = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';
  public exportExcel(jsonData: any[],fileName?: any): void {
    const ws: XLSX.WorkSheet = XLSX.utils.json_to_sheet(jsonData);
    const wb: XLSX.WorkBook = { Sheets: { 'data': ws }, SheetNames: ['data'] };
    const excelBuffer: any = XLSX.write(wb, { bookType: 'xlsx', type: 'array' });
    this.saveExcelFile(excelBuffer,fileName);
  }

  private saveExcelFile(buffer: any, fileName?: any): void {
    const data: Blob = new Blob([buffer], { type: this.fileType });
    FileSaver.saveAs(data, fileName);
  }

Здесь у меня есть 10di git штрих-код, серийные номера, проблема в том, что я хочу их отображать как есть: если пользователь вводит 0001234567 как штрих-код, 0 удаляются, так как он обрабатывается как число, если я могу сделать тип данных этих столбцов (B, C) как текст при загрузке самого шаблона, то если пользователь введет 0, он останется в Excel. я попытался добавить \ 0, который рассматривается как строка, но все еще не работает.

...