0.3.5 • Published 3 years ago

react-basic-select v0.3.5

Weekly downloads
-
License
MIT
Repository
github
Last release
3 years ago

react-basic-select

Just another select component for React. Created for Autarkis.

Demo

Why?

Because I needed a small, mostly dependency-free Select component for my project. Figured people may use it as well.

CSS?

You can find an example CSS implementation in dist/example.css, which lists all classes used in this package.

Installation

npm install react-basic-select

Basic Usage

const options = ["Option 1", "Option 2", "Option 3"];

<Select	options=[options]/>

Props

proptypedefaultdescription
optionsstring[] \| Option[] \| Group[]n/aArray of either string, or Option or Group objects
multi?booleanundefinedAllow multiple selections
search?booleanundefinedAllow option search via input value
disabled?booleanundefinedClose option dropdown after selecting an option
closeOnSelect?booleanundefinedClose option dropdown after selecting an option
appendGroupValue?booleanundefinedPrepends the group.value to option.value
showAsText?booleanundefinedShows the selected options as a string
create?booleanundefinedAllow user created options
createString?string"Create:"Prefix text for user created option
placeholder?stringundefinedPlaceholder text for input
defaultSelected?string[] \| Option[] \| Group[]undefinedSelects value(s) when the Select element is rendered
searchSensitivity?number (0.0 to 1.0)undefinedSearch matching sensitivity
onOptionSelect?(value: Option) => voidundefinedOption Select callback
onSelectedChange?(values: Option[]) => voidundefinedSelected value(s) callback
onInputChange?(values: string) => voidundefinedInput value callback

Prop Considerations

  • If both search and create are false, instead of an input, you get a div to display the options list.
  • onOptionSelect calls the given callback before the value is processed, and onSelectedChange calls its callback afterwards.
  • onInputChange callback is only called if you have either search or create, or both. It is called after all the filtering and such is done.
  • If showAsText is set, users won't be able to remove selected options via clicking on them.

Options Types

cosnt stringArray = ["Option 1", "Option 2"]
cosnt optionArray = [
  { name: "Option 1", value: "option_1" },
  { name: "Option 2", value: "option_2" }
]
cosnt groupArray = [
  { name: "Group 1", value: "group_1"
    options: [
      { name: "Option 1", value: "option_1" },
      { name: "Option 2", value: "option_2" }
    ]
  },
  { name: "Group 2", value: "group_2"
    options: [
      { name: "Option 3", value: "option_3" },
      { name: "Option 4", value: "option_4" }
    ]
  },
]
0.3.5

3 years ago

0.3.3

3 years ago

0.3.1

3 years ago

0.3.0

3 years ago

0.2.4

3 years ago

0.2.3

3 years ago

0.1.8

3 years ago

0.1.7

3 years ago

0.1.6

3 years ago

0.1.5

3 years ago

0.1.4

3 years ago

0.1.3

3 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago