Home

Awesome

React Virtualized Checkbox

Demo available here: http://emilebres.github.io/react-virtualized-checkbox/

react-virtualized-checkbox-demo

Getting started

Install react-virtualized-checkbox using npm.

npm install react-virtualized-checkbox --save

yarn add react-virtualized-checkbox

And in your code:

import VirtualizedCheckbox from 'react-virtualized-checkbox'

Simple Example

You pass react-virtualized-checkbox an array of items. Here's a simple example:

import React, { Component } from 'react'
import VirtualizedCheckbox from 'react-virtualized-checkbox'

class MyCheckbox extends Component {
  constructor (props) {
    super(props)

    this.state = {}
  }

  render () {
    const items = [
      { label: "One", value: 1, checked: true},
      { label: "Two", value: 2, checked: true},
      { label: "Three", value: 3, checked: true}
      // And so on...
    ]

    return (
      <VirtualizedCheckbox
        items={items}
        onOk={(checkedItems) => this.setState({ checkedItems })}
        onCancel={ () => this.setState({ checkedItems: [] })}
      />
    )
  }
}

React Virtualized Checkbox Props

PropertyTypeDescription
itemsPropTypes.arrayItems to choose from; can be an array of strings or an array of objects.
onOkPropTypes.funcCallback called when the Ok button is clicked; takes an array of the selected items, a boolean if all items are selected and the text filter as arguments.
onCancelPropTypes.funcCallback called when the Cancel button is clicked.
onChangePropTypes.funcCallback called when a checkbox is clicked. If a normal checkbox is clicked, will return the item. If the (Select all) checkbox is clicked, will return an array of all filtered items.
hasFilterBoxPropTypes.boolIf the text filter box is displayed; defaults to true
hasOkButtonPropTypes.boolIf the Ok button is displayed; defaults to true
hasCancelButtonPropTypes.boolIf the Cancel button is displayed; defaults to true
labelKeyPropTypes.stringLabel key; defaults to 'label'.
rowHeightPropTypes.numberRow height; defaults to 30 pixels.
heightPropTypes.numberComponent height; If not set, will get from the parent.
widthPropTypes.numberComponent width; If not set, will get from the parent.