react-toolbox/components/autocomplete/readme.md

54 lines
2.1 KiB
Markdown
Raw Normal View History

# Autocomplete
2015-11-08 18:49:00 +03:00
An input field with a set of predeterminated labeled values. When it's focused it shows a list of hints that are filtered by label as the user types. They can be simple or multiple depending on the amount of values that can be selected. The opening direction is determined at opening time depending on the current position.
<!-- example -->
2015-10-31 21:44:51 +03:00
```jsx
2015-11-08 18:49:00 +03:00
import Autocomplete from 'react-toolbox/lib/autocomplete';
2015-11-08 18:49:00 +03:00
const source = {
'ES-es': 'Spain',
'TH-th': 'Thailand',
'EN-gb': 'England',
'EN-en': 'USA'
};
2015-11-08 18:49:00 +03:00
class AutocompleteTest extends React.Component {
state = {
countries: ['ES-es', 'TH-th']
2015-11-08 18:49:00 +03:00
}
handleChange = (value) => {
this.setState({countries: value});
2015-11-08 18:49:00 +03:00
};
render () {
return (
<Autocomplete
direction="down"
label="Choose countries"
onChange={this.handleChange}
source={source}
value={this.state.countries}
2015-11-08 18:49:00 +03:00
/>
);
}
}
```
## Properties
| Name | Type | Default | Description|
2015-10-31 23:55:12 +03:00
|:-----|:-----|:-----|:-----|
| `className` | `String` | `''` | Sets a class to style of the Component.|
2015-11-08 18:49:00 +03:00
| `direction` | `String` | `auto` | Determines the opening direction. It can be `auto`, `top` or `bottom`. |
2015-10-31 23:55:12 +03:00
| `disabled` | `Bool` | `false` | If true, component will be disabled.|
| `error` | `String` | | Sets the error string for the internal input element.|
| `label` | `String` | | The text string to use for the floating label element.|
| `multiple` | `Bool` | `true` | If true, component can hold multiple values.|
| `onChange` | `Function` | | Callback function that is fired when the components's value changes.|
2015-11-08 18:49:00 +03:00
| `source` | `Object` or `Array` | | Object of key/values or array representing all items suggested. |
| `value` | `String` or `Array` | | Value or array of values currently selected component.|
2015-11-08 18:49:00 +03:00
Additional properties will be passed to the input element so you can use `name`, `type`... etc.