News for hackers. Stuff that matters.
Re:Things I wish I knew about state management when I starte... by gorpomon on Monday February 10, 2020 @12:33PM (#22291223)
I use redux-form and really enjoy it. A modern form UI has a lot of considerations that classic html/css forms do not:

* The concept of pristine/untouched inputs

* Basic and custom validations

* Resetting forms to various states

* Prepopulating data based on an API response

* Dynamically creating inputs based on UI states.

* Normalizing data upon input or submit

* Creating wizard/multi-step forms

All those implemented in Vanilla JS or in a React component can get messy. Is redux-form or any form library absolutely necessary, nope, but they sure do help.

Re:Things I wish I knew about state management when I starte... by ljm on Monday February 10, 2020 @02:10PM (#22292159)
At one place I was stuck with some React form library (can't remember the name but wouldn't shame either), as well as being stuck on a version of React Router that categorically refused to support some of the features earlier versions used to have.

I tried patching the form lib to update it from React 0.14.1 or whatever we were on way back then, to the new React 16 hotness. I eventually gave up because the code was so generic that I had to patch use-cases I'd never even thought of (good old feature creep).

Meanwhile, our home-grown forms using plain-JS, hooking into graphql, pretty much did the job with only simple abstractions. The same was to be said for the SVG-based clip-path polyfill I wrote to support IE. I had no problem writing a basic, self-contained component for that.

Most of those form use-cases are quite trivial implementations IMO and the complexity comes from working around the dependency's limited API rather than the browser itself.