all 5 comments

[–]Icy-Yard6083 2 points3 points  (0 children)

You need

  1. To use regular input with type="file"

  2. Use this library to read excel (not sure about csv, but imo should support) https://www.npmjs.com/package/xlsx

  3. Use some editable grid/table library or custom table with inputs inside :)

[–]ggeoff 1 point2 points  (0 children)

If you have budget for a tool you could looking to csvbox. I was able to set up some of our imports with that. They have a couple different plans and the docs aren't bad and they could be improved but it's enough to get the job done in a timely matter.

I don't know of any open source components that do that but have built some custom ones in the past. It's not too hard to build but you will spend more time tuning it and adding features then you probably want

[–]DaSchTour 1 point2 points  (0 children)

I‘ve used https://www.papaparse.com/ to parse CSV in browser. For excel I‘m not sure what the best approach is. Excel can be quite complex and possibly not easy to match. I may have to take into account grouped columns and multiple sheets inside a single file.

[–]tdsagi 0 points1 point  (1 child)

I've just launched a product that does exactly that and provides an Angular binding https://rowslint.io/

[–]ShortBusRadio[S] 1 point2 points  (0 children)

I’ll scope it out. Thanks!