1.1.9 • Published 2 years ago
react-form-management v1.1.9
React Form Management
React Form Management is used to handle the state to render only itself, preventing page lagging or freezing and validating user-inputted data. Demo
Features
- To manage the state to protect the UI lags.
- validation form (yup)
Installation
npm install react-form-management
yarn add react-form-management
QuickStart
import { FormProvider, Form, useFormManagement } from "react-form-management";
import * as yup from "yup";
const App = () => {
const { onSubmit, onReset, form, errors, formProvider } = useFormManagement({
defaultForm: {
first_name: "",
last_name: ""
},
schema: yup.object().shape({
first_name: yup.string().required(),
last_name: yup.string().required()
})
});
const onClickSubmit = ({ form }) => {
console.log("form", form);
};
return (
<FormProvider formProvider={formProvider}>
<Form
name="first_name"
render={({ formState, errorState }) => {
return (
<div>
<input value={formState.value} onChange={formState.onChange} />
{errorState.isError && errorState.errorMessage}
</div>
);
}}
/>
<Form
name="last_name"
render={({ formState, errorState }) => {
return (
<div>
<input value={formState.value} onChange={formState.onChange} />
{errorState.isError && errorState.errorMessage}
</div>
);
}}
/>
<button onClick={() => onSubmit(onClickSubmit)}>Submit</button>
<button onClick={() => onReset({})}>Reset</button>
</FormProvider>
);
};
export default App;
API useFormManagement
Parameter | Type | Description |
---|---|---|
formProvider | object | To send the data to the formProvider. |
form | object | Your form value |
errors . | object | Form errors according to the schema you have declared. |
onSubmit | function | Submit form |
onReset | function | Reset Form |
onChangeCustom | function | this function use for change other field value |
observe | function | listen value when the value is changed |
addItem | function | this function use for add new item in the case of an array |
removeItem | function | this function use for remove item in the case of an array |
removeAllItem | function | this function use for remove all item in the case of an array |
Props useFormManagement
Parameter | Type | Description |
---|---|---|
defaultForm | object | Default form value |
schema | yup | Schema for validate form error |
Props FormProvider
Parameter | Type | Description |
---|---|---|
formProvider | object | Required |
Props Form
Parameter | Type | Description | Method |
---|---|---|---|
name | string | Required Your field name | |
render | component | Required Your component input | render={ ({ formState, errorState, observe }) => {} } OR render={ ({ formState: { value, onChange, onChangeCustom }, errorState: { isError, errorMessage }, observe }) => {} } |
1.1.1
2 years ago
1.1.0
2 years ago
1.1.9
2 years ago
1.1.8
2 years ago
1.1.7
2 years ago
1.1.6
2 years ago
1.1.5
2 years ago
1.1.4
2 years ago
1.1.3
2 years ago
1.1.2
2 years ago
1.0.12
2 years ago
1.0.9
2 years ago
1.0.8
2 years ago
1.0.7
3 years ago
1.0.11
2 years ago
1.0.10
2 years ago
1.0.6
3 years ago
1.0.5
3 years ago
1.0.4
3 years ago
1.0.3
3 years ago
1.0.2
3 years ago
1.0.1
3 years ago
1.0.0
3 years ago