uncontrollable-input
Simplify the creation of controlled/uncontrolled React inputs
Features:
- fully compatible with React 15 (both stateful and stateless components)
- full controlled and uncontrolled modes support
- errors in dev mode on incorrect uses (
NODE_ENV != 'production'
) - full getter/setter support
undefined
can be used in controlled mode (as long as there is avalue
prop)
Install
Browserify/Webpack
Node &Installation of the npm package:
> npm install --save uncontrollable-input
Then require the package:
// ES2015 // ES5const uncontrollableInput = default
Browser
You can directly use the build provided at unpkg.com:
Usage
Create a controlled input and use the decorator:
const MyInput = @
You can now use it in either controlled or uncontrolled mode:
// uncontrolled: defaultValue and ref<MyInput defaultValue='foo bar' ref= { if ref console // getter/setter }/> // controlled:<MyInput onChange= { this } value=thisstatevalue/>
Development
# Install dependencies
> npm install
# Run the tests
> npm test
# Continuously compile
> npm run dev
# Continuously run the tests
> npm run dev-test
# Build for production (automatically called by npm install)
> npm run build
Contributions
Contributions are very welcomed, either on the documentation or on the code.
You may:
- report any issue you've encountered;
- fork and create a pull request.
License
ISC © Julien Fontanet