Comments (4)
You only mistake is to use nfields
instead of fields
.
const { Parser, transforms: { unwind } } = require('json2csv');
const data = {
"meta": {
"request": {
"page": 1,
"format": "json",
"start_date": "2021-11-01",
"end_date": "2021-11-30",
"country": "gb"
},
"status": "Success",
"last_updated": "2021-11-30"
},
"top_sites": [
{
"rank": 1,
"domain": "song1"
},
{
"rank": 2,
"domain": "song2"
}
]
};
const fields = ['top_sites.rank', 'top_sites.domain'];
const transforms = [unwind({ paths: ['top_sites'] })];
const json2csvParser = new Parser({ fields, transforms });
const csv = json2csvParser.parse(data);
console.log(csv);
works and outputs
"top_sites.rank","top_sites.domain"
1,"song1"
2,"song2"
Using the CLI you should be able to do the same.
from json2csv.
Thanks, @juanjoDiaz for the reply and help.
I am not very versed with JS, so as per your comment, it means we need to have the variable name as fields
only and not, say, myFields
, or fields_to_scrape
?
from json2csv.
You can name the variable as you want if you use full syntax:
const myRandomVariableContainingTheFields = ['top_sites.rank', 'top_sites.domain'];
const transforms = [unwind({ paths: ['top_sites'] })];
const json2csvParser = new Parser({ fields: myRandomVariableContainingTheFields, transforms });
but using shorthand syntax:
const json2csvParser = new Parser({ myRandomVariableContainingTheFields, transforms });
is equivalent to:
const json2csvParser = new Parser({ myRandomVariableContainingTheFields: myRandomVariableContainingTheFields, transforms: transforms });
The the name of the config options are wrong.
from json2csv.
:) Aah, I realize my fault now. A pretty dumb question that was.
JS Fundamental that was.
Thanks for the Explanation.
from json2csv.
Related Issues (20)
- CSV not breaking lines HOT 2
- promise() not listen for 'close' event HOT 2
- Replace docpress with docusaurus or similar HOT 1
- csv2json HOT 1
- Changelog is not updated in master HOT 1
- \r ends the line even if eol option is set to \n HOT 2
- Parsing JSON with array HOT 3
- Validation/skipping objects HOT 2
- Documentation: missing the type of Parser.parse() return value ( Synchronous API ) HOT 1
- how can we input output multiple files from CLI? HOT 1
- convert to esm HOT 2
- Data transforms error handling HOT 3
- Can't use default formatters in version 5.0.7 HOT 1
- how to use transform
- 6.0.0-alpha.2 version set to latest stable version HOT 1
- BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default. HOT 3
- "Transforms" options cause out-of-memory-error HOT 1
- How to specify flattened columns with argument "fields"? HOT 1
- the first object in array defines the schema and results in missing fields in csv output HOT 1
- only up to 32759 characters can be output in a cell
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from json2csv.