ahstro / react-dropdown-multiselect

A dead simple dropdown multiselect component for React
MIT License
1 stars 1 forks source link

Disclaimer

This is a fork of react-dropdown by fraserxu, so huge thanks to them! I just needed multiselect for a project and forked, so since I don't expect anyone else to really use this, I'm not going to spend a lot of time rewriting the docs. What follows is basically just react-dropdown's README after a s/react-dropdown/\0-multiselect/g, so things are bound not to be accurate AT ALL. Might rewrite it at some point if I feel like it.

react-dropdown-multiselect

NPM version Downloads

Simple Dropdown component for React, inspired by react-select

Why

Installation

$ npm install react-dropdown-multiselect  --save

Changelog

If you want to support React version under v0.13, use react-dropdown@v0.6.1

Usage

'use strict';

import React from 'react';
import Dropdown from '../';

class App extends React.Component {

  constructor() {
    this.state = {
      selected: { value: 'two', label: 'Two'}
    }
  }

  _onSelect(option) {
    console.log('You selected ', option.label)
    this.setState({selected: option})
  }

  render() {

    const options = [
      { value: 'one', label: 'One' },
      { value: 'two', label: 'Two' },
      {
        type: 'group', name: 'group1', items: [
          { value: 'three', label: 'Three' },
          { value: 'four', label: 'Four' }
        ]
      },
      {
        type: 'group', name: 'group2', items: [
          { value: 'five', label: 'Five' },
          { value: 'six', label: 'Six' }
        ]
      }
    ]

    let defaultOption = this.state.selected

    return (
      <Dropdown options={options} onChange={this._onSelect.bind(this)} value={defaultOption} placeholder="Select an option" />
    )
  }

}
React.render(<App />, document.body)

Run example

$ cd example && npm install && npm run watch

License

MIT | Build for CSViz project @Wiredcraft