Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/belphemur/vue-json-csv
VueJS component to export Json Data into CSV file and download the resulting file.
https://github.com/belphemur/vue-json-csv
csv export json-data vuejs-components vuejs2
Last synced: 4 days ago
JSON representation
VueJS component to export Json Data into CSV file and download the resulting file.
- Host: GitHub
- URL: https://github.com/belphemur/vue-json-csv
- Owner: Belphemur
- License: mit
- Created: 2018-08-16T17:20:34.000Z (over 6 years ago)
- Default Branch: develop
- Last Pushed: 2024-03-15T15:05:18.000Z (11 months ago)
- Last Synced: 2025-02-02T01:09:13.326Z (11 days ago)
- Topics: csv, export, json-data, vuejs-components, vuejs2
- Language: JavaScript
- Size: 4.4 MB
- Stars: 125
- Watchers: 4
- Forks: 27
- Open Issues: 37
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Vue JSON to CSV file
[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2FBelphemur%2Fvue-json-csv.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.com%2FBelphemur%2Fvue-json-csv?ref=badge_shield) [![NodeJs](https://github.com/Belphemur/vue-json-csv/actions/workflows/nodejs.yml/badge.svg)](https://github.com/Belphemur/vue-json-csv/actions/workflows/nodejs.yml)VueJS component to export Json Data into CSV file and download the resulting file.
## Example
[GitHub Pages](https://belphemur.github.io/vue-json-csv/)## Getting started
Get the package:
```bash
yarn add vue-json-csv
```Register JsonCSV in your app entrypoint:
```js
import Vue from 'vue'
import JsonCSV from 'vue-json-csv'Vue.component('downloadCsv', JsonCSV)
```In your template
```htmlDownload Data
```
## 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](https://www.papaparse.com/docs#config) yourself |## Example
```js
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
```html
Download CSV (This is a slot)
```
REQUIRED
- json_data: Contains the data you want to export## License
MIT[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2FBelphemur%2Fvue-json-csv.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2FBelphemur%2Fvue-json-csv?ref=badge_large)