Skip to content

Export a JS collection to CSV; written in TypeScript.

License

Notifications You must be signed in to change notification settings

Agreena-ApS/export-to-csv

 
 

Repository files navigation

export-to-csv | Export to CSV Mini Library

Based off of this library by Javier Telio

Helper library to quickly and easily create a CSV file in browser or Node

Installation

yarn add export-to-csv
// npm install --save export-to-csv

Usage

import { ExportToCsv } from 'export-to-csv';

var data = [
  {
    name: 'Test 1',
    age: 13,
    average: 8.2,
    approved: true,
    description: "using 'Content here, content here' "
  },
  {
    name: 'Test 2',
    age: 11,
    average: 8.2,
    approved: true,
    description: "using 'Content here, content here' "
  },
  {
    name: 'Test 4',
    age: 10,
    average: 8.2,
    approved: true,
    description: "using 'Content here, content here' "
  },
];

  const options = { 
    fieldSeparator: ',',
    quoteStrings: '"',
    decimalSeparator: '.',
    showLabels: true, 
    showTitle: true,
    title: 'My Awesome CSV',
    useTextFile: false,
    useBom: true,
    useKeysAsHeaders: true,
    // headers: ['Column 1', 'Column 2', etc...] <-- Won't work with useKeysAsHeaders present!
  };

const csvExporter = new ExportToCsv(options);

csvExporter.generateCsv(data);

API

Option Default Description
fieldSeparator , Defines the field separator character
filename 'generated' Sets the name of the downloaded file. ".csv" will be appended to the value provided.
quoteStrings " If provided, will use this characters to "escape" fields, otherwise will use double quotes as deafult
decimalSeparator . Defines the decimal separator character (default is .). If set to "locale", it uses the language sensitive representation of the number.
showLabels false If true, the first row will be the headers option or object keys if useKeysAsHeaders is present
showTitle false Includes the title as the first line in the generated file
title 'My Generated Report' This string will be used as the report title
useBom true If true, adds a BOM character at the start of the CSV to improve file compatibility
useTextFile false If true, returns a .txt file instead of .csv
useKeysAsHeaders false If true, this will use the keys of the first object in the collection as the column headers
headers [] Expects an array of strings, which if supplied, will be used as the column headers

Thanks!

Credits and Original Authors
javiertelioz
sn123
arf1980

About

Export a JS collection to CSV; written in TypeScript.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages

  • TypeScript 96.8%
  • JavaScript 3.2%