debounce-input-decorator
Version:
Decorator to easily create debounced React inputs
71 lines (46 loc) • 1.51 kB
Markdown
# debounce-input-decorator [](https://travis-ci.org/JsCommunity/debounce-input-decorator)
> Decorator to easily create debounced React inputs
## Install
Installation of the [npm package](https://npmjs.org/package/debounce-input-decorator):
```
> npm install --save debounce-input-decorator
```
## Usage
You can apply this decorator either to a DOM element or to any React component as long as it accepts `onChange` and `value` properties.
```js
import debounceDecorator from 'debounce-input-decorator'
import { Input } from 'reactstrap'
const ReactStrapInputDebounced = debounceDecorator(250)(Input)
const DomInputDebounced = debounceDecorator(250)('input')
```
Because you usually need a `input` or `textarea`, those are provided
directly:
```js
import { Input, Textarea } from 'debounce-input-decorator'
<Input
debounceTimeout={300}
// ...
/>
```
## Development
```
# Install dependencies
> yarn
# Run the tests
> yarn test
# Continuously compile
> yarn dev
# Continuously run the tests
> yarn dev-test
# Build for production (automatically called by npm install)
> yarn build
```
## Contributions
Contributions are *very* welcomed, either on the documentation or on
the code.
You may:
- report any [issue](https://github.com/JsCommunity/debounce-input-decorator/issues)
you've encountered;
- fork and create a pull request.
## License
ISC © [Julien Fontanet](https://github.com/julien-f)