JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 9687
  • Score
    100M100P100Q123732F

Download your JSON data as an CSV file directly from the browser

Package Exports

  • vue-json-csv
  • vue-json-csv/dist/vue-json-csv.common.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (vue-json-csv) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Vue JSON to CSV file

FOSSA Status NodeJs

VueJS component to export Json Data into CSV file and download the resulting file.

Example

GitHub Pages

Getting started

Get the package:

yarn add vue-json-csv

Register JsonCSV in your app entrypoint:

import Vue from 'vue'
import JsonCSV from 'vue-json-csv'

Vue.component('downloadCsv', JsonCSV)

In your template

<download-csv
    :data   = "json_data">
    Download Data
    <img src="download_icon.png">
</download-csv>

Props List

Name Type Description
data Array (required) Data to be exported
fields Array/Function(value, key) fields inside the Json Object that you want to export. If no given, all the properties in the Json are exported. Use the function to filter the data and only keep the properties you want.
labels Object/Function(value, key) Set the label for the header row.
name string filename to export, default: data.csv
delimiter string Default ",". Can be changed to anything.
separator-excel boolean If true, will prepend SEP={delimiter} to the file to make it easily usable with Excel
encoding string Set the wanted encoding, default to 'utf-8'
advancedOptions Object You can set all the options of PapaParse yourself

Example

import Vue from 'vue'
import JsonCSV from 'vue-json-csv'

Vue.component('downloadCsv', JsonCSV)

const app = new Vue({
    el: '#app',
    data: {     
        json_data: [
            {
                'name': 'Tony Peña',
                'city': 'New York',
                'country': 'United States',
                'birthdate': '1978-03-15',
                'phone': {
                    'mobile': '1-541-754-3010',
                    'landline': '(541) 754-3010'
                }
            },
            {
                'name': 'Thessaloniki',
                'city': 'Athens',
                'country': 'Greece',
                'birthdate': '1987-11-23',
                'phone': {
                    'mobile': '+1 855 275 5071',
                    'landline': '(2741) 2621-244'
                }
            }
        ]
    }
})

In your Template call it like

<download-csv
    class   = "btn btn-default"
    :data   = "json_data"
    name    = "filename.csv">

    Download CSV (This is a slot)

</download-csv>

REQUIRED

  • json_data: Contains the data you want to export

License

MIT

FOSSA Status