react-form-utils
v2.0.0
Published
Serialize/Deserialize form input, and lookup
Downloads
33
Maintainers
Readme
react-form-utils
react-form-utils
provides helper functions to retrieve form props and form values
import {inputPropsLookup, inputValueLookup, formSerialize} from 'react-form-utils';
inputPropsLookup(fieldsProps, fieldName)
Argument | Type | Example
:-----------| :-----------| :-----------
fieldsProps
| object
| {name: {type: 'text'}, email: {type: 'email'}}
fieldName
| string
| name
, email[0]
, email[1]
returns
object
: props, e.g. {type: 'text'}
e.g.
const fieldsProps = {
name: { type: 'text' },
age_group: {
type: 'select',
size: 4,
options: []
}
address: {
type: 'nested',
fields: {
street: {
type: 'text'
}
}
}
};
const fieldName = 'address[0][street]';
const props = inputPropsLookup(fieldsProps, fieldName);
// <input name={fieldName} {...props} />
formSerialize(form)
formSerialize(form)
Argument | Type | Example
:-----------| :-----------| :-----------
form
| DOMNode
| form
element
returns
object
. serialized, e.g. {type: 'text'}
e.g.
// <form><input name="message" value="hello"/></form>
const values = formSerialize(this.form);
// { message: 'hello' }
inputValueLookup(values, fieldName)
Argument | Type | Example
:-----------| :-----------| :-----------
values
| object
| {address: [ {zip: '55555'} ]}
fieldName
| string
| address[0][zip]
returns
any
. input value, e.g. {type: 'text'}
e.g.
const values = {
name: 'Ali',
age_group: '31-40'
address: {
0: {
street: '13 Calle 49a'
}
};
const fieldName = 'address[0][street]';
const value = inputValueLookup(values, fieldName);
// <input name={fieldName} value={value} />