react-checkbox-group
TypeScript icon, indicating that this package has built-in type declarations

5.0.2 • Public • Published

React-checkbox-group

Greenkeeper badge

Build Status

This is your average checkbox group:

<form>
  <input
    onChange="{handleFruitChange}"
    type="checkbox"
    name="fruit"
    value="apple"
  />Apple
  <input
    onChange="{handleFruitChange}"
    type="checkbox"
    name="fruit"
    value="orange"
  />Orange
  <input
    onChange="{handleFruitChange}"
    type="checkbox"
    name="fruit"
    value="watermelon"
  />Watermelon
</form>

Repetitive, hard to manipulate and easily desynchronized. Lift up name and onChange, and give the group an initial checked values array. See below for a complete example

Install

npm install react-checkbox-group

or

yarn add react-checkbox-group

Simply require/import it to use it:

import CheckboxGroup from 'react-checkbox-group'

Example

import React, { useState, useEffect } from 'react'
import CheckboxGroup from 'react-checkbox-group'
 
const Demo = () => {
  // Initialize the checked values
  const [fruits, setFruits] = useState<string[]>(['apple', 'watermelon'])
 
  useEffect(() => {
    const timer = setTimeout(() => {
      setFruits(['apple', 'orange'])
    }, 5000)
 
    return () => clearTimeout(timer)
  }, [])
 
  return (
    <CheckboxGroup name="fruits" value={fruits} onChange={setFruits}>
      {(Checkbox) => (
        <>
          <label>
            <Checkbox value="apple" /> Apple
          </label>
          <label>
            <Checkbox value="orange" /> Orange
          </label>
          <label>
            <Checkbox value="watermelon" /> Watermelon
          </label>
        </>
      )}
    </CheckboxGroup>
  )
}
 
ReactDOM.render(<Demo />, document.body)

License

MIT.

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
5.0.21,001latest
4.0.0-beta1beta

Version History

VersionDownloads (Last 7 Days)Published
5.0.21,001
5.0.12
5.0.01
4.0.1952
3.3.44,540
3.3.32
4.0.01
3.3.21
4.0.0-beta1
3.3.11,533
3.3.02
3.2.012
3.1.163
3.1.01
3.0.153
3.0.01
1.0.47
1.0.31
1.0.21
1.0.12
1.0.02
0.3.24
0.3.12
0.2.21
0.2.13
0.2.01
0.1.92
0.1.82
0.1.72
0.1.61
0.1.51
0.1.41
0.1.31
0.1.21
0.1.11
0.1.01

Package Sidebar

Install

npm i react-checkbox-group

Weekly Downloads

2,112

Version

5.0.2

License

MIT

Unpacked Size

5.41 kB

Total Files

6

Last publish

Collaborators

  • ziad-saab