Comments (4)
I'll definitely consider this for version 3.0 which is well under way, because I think it could be really useful. In the mean time, how about using a variable defined in a scope that both hooks can access?
from papaparse.
@achambers I'm implementing this feature tonight. I'm thinking that the before
hook will work a little differently than it does now. Right now, you can return a variety of things: an object to redefine the config, "skip" to skip, false to abort, and nothing (undefined) to continue. I'm going to standardize it so that if you do return anything, you always return an object that can look like this:
{
action: "abort",
reason: "some reason",
config: { /* custom config for just this file */ }
}
Each property is optional. Not returning anything or not specifying an action or specifying an action of "continue" will carry on as normal. The action can also be "abort" or "skip". Only an action of "abort" will raise an error, but the reason will be carried into the error handler (which I'm still figuring out). If you want to adjust the config for a certain file, you can specify it in the config
property.
Sound good?
from papaparse.
Closing unless this still needs attention. Thanks again for the feedback!
from papaparse.
Sorry @mholt. Didn't get around to replying. Yep, that sounds like a reasonable solution. I'll work it in to what I have when you're done and will see how it feels.
Nice work mate.
from papaparse.
Related Issues (20)
- transformHeader returns function instead of string: trim is not a function HOT 8
- Incorrect header detection in CSV parsing 5.4.1 HOT 1
- Error in dynamic import in web component HOT 5
- PapaParse with stimulus.js HOT 1
- characters
- Feature Request: progress callback + complete callback with the bulk of the parsed entries
- Papa Unparse Delimiter and QuoteChar not working together HOT 1
- Preview of first row fails with "UndetectableDelimiter" error if file is too large HOT 1
- Parsing data with duplicate headers in streaming mode results in empty result HOT 1
- Extra columns when parsing CSV rows with JSON object HOT 1
- For CSV comma-delimited, when a row ends with an empty cell, papaparse mangles the next row's first cell HOT 1
- Autodetect of date formats
- renamedHeaders not showing in meta HOT 4
- Parse string with \n chars
- transformHeader called twice HOT 7
- nrows / skiprows HOT 1
- `Papa.parse()`: `comments` option breaks for quoted cells HOT 1
- JSON to CSV - LineBreaks in strings HOT 1
- Non-quote quoteChar still quotes quotes
- transformHeader for unparse? HOT 1
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 papaparse.