5.0.2 • Published 3 months ago

react-validatable-form v5.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
3 months ago

React Validatable Form

React validatable form hook that is used to create dynamic client side validations on React forms.


NPM (scoped) License GitHub contributors Github Issues Vulnerabilities Downloads Bundle Size


Table of Contents


Installation

react-validatable-form requires:

  • React 17.0.2 or later
yarn add react-validatable-form

or

npm install react-validatable-form

Getting Started

Setup ReactValidatableFormProvider

Wrap your App inside ReactValidatableFormProvider.

import { ReactValidatableFormProvider } from 'react-validatable-form';

// Wrap your app inside ReactValidatableFormProvider
const App = () => {
    return (
        <ReactValidatableFormProvider
            lang={'en'}
            customRules={null}
            translations={null}
            hideBeforeSubmit={true}
            showAfterBlur={true}
            focusToErrorAfterSubmit={true}
            elementFocusHandler={null}
        >
            <Main />
        </ReactValidatableFormProvider>
    );
};

useValidatableForm Hook Usage

import { useValidatableForm } from 'react-validatable-form';

const initialFormData = {};
const rules = [{ path: 'val', ruleSet: [{ rule: 'required' }] }];

const MyComponent = () => {
    const { isValid, formData, setPathValue, setFormIsSubmitted, setPathIsBlurred, getValue, getError } =
        useValidatableForm({
            rules,
            initialFormData,
        });

    return (
        <>
            <input
                type="text"
                value={getValue('val') || ''}
                onChange={(e) => setPathValue('val', e.target.value)}
                onBlur={() => setPathIsBlurred('val')}
                id="val"
            />
            <div className="errorText">{getError('val') || ' '}</div>
            <div>
                <button onClick={() => setFormIsSubmitted()}>Submit Form</button>
            </div>
        </>
    );
};

Examples

Checkout live examples on react-validatable-form-demo page for various customizations.

Live Examples on StackBlitz

Contributing

Please review the contributing guide before contributing to the repository.

License

MIT


5.0.2

3 months ago

5.0.1

4 months ago

5.0.0-beta.2

6 months ago

5.0.0-beta.3

6 months ago

5.0.0-beta.1

6 months ago

5.0.0

6 months ago

4.0.1

1 year ago

4.1.0-beta

1 year ago

4.1.0-beta2

1 year ago

4.0.0

1 year ago

3.7.0-beta.1

2 years ago

3.7.0

2 years ago

3.6.0

2 years ago

3.5.1

2 years ago

3.5.0

2 years ago

3.4.0

2 years ago

3.2.1

2 years ago

3.2.0

2 years ago

3.0.0

2 years ago

2.9.0

2 years ago

3.3.0

2 years ago

3.1.0

2 years ago

2.6.0

2 years ago

2.8.0

2 years ago

2.5.0

2 years ago

2.7.0

2 years ago

2.5.2

2 years ago

2.5.1

2 years ago

2.2.0

2 years ago

2.4.1

2 years ago

2.4.0

2 years ago

2.4.2

2 years ago

2.3.0

2 years ago

2.0.0

3 years ago

2.1.1

3 years ago

2.1.0

3 years ago

1.3.0

3 years ago

1.2.0

3 years ago

1.0.0

3 years ago

0.7.2

3 years ago

0.3.6

3 years ago

0.7.1

3 years ago

0.3.8

3 years ago

0.3.7

3 years ago

0.5.0

3 years ago

0.7.0

3 years ago

1.1.0

3 years ago

0.3.9

3 years ago

0.8.1

3 years ago

0.8.0

3 years ago

0.8.2

3 years ago

0.4.0

3 years ago

0.6.0

3 years ago

0.3.0

3 years ago

0.3.5

3 years ago

0.2.9

3 years ago

0.3.2

3 years ago

0.3.1

3 years ago

0.3.4

3 years ago

0.3.3

3 years ago

0.2.7

3 years ago

0.2.6

3 years ago

0.2.8

3 years ago

0.2.1

3 years ago

0.2.0

3 years ago

0.1.8

3 years ago

0.1.7

3 years ago

0.1.9

3 years ago

0.2.3

3 years ago

0.2.2

3 years ago

0.2.5

3 years ago

0.1.6

3 years ago

0.2.4

3 years ago

0.1.0

3 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.4

3 years ago

0.1.5

3 years ago

0.0.9

3 years ago

0.0.8

3 years ago

0.0.5

3 years ago

0.0.7

3 years ago

0.0.6

3 years ago

0.0.4

3 years ago

0.0.3

3 years ago

0.0.2

3 years ago