fyndiq-component-dropdown
A dropdown component for Fyndiq
Installation
The component can be installed through NPM:
npm i -S fyndiq-component-dropdown
Usage
// Normal usage<Dropdown button="Open dropdown">Dropdown content</Dropdown>// No arrow pointing downwards<Dropdown button="Open dropdown" noArrow>Dropdown content</Dropdown>// Custom button<Dropdown button=<Button type="primary">Open Dropdown</Button>>Dropdown content</Dropdown>// Open dropdown on hover<Dropdown button="Hover me" hoverMode>Dropdown content</Dropdown>// Change the position of the dropdown<Dropdown button="Top right" position="tr">Dropdown content</Dropdown>// Custom class names<Dropdownbutton="Open"className="className"wrapperClassName="wrapperClassName">Content</Dropdown>// Programatically close the dropdown from inside<Dropdown button="button"><button onClick=onClose>Click on me to close me</button></Dropdown>// Add handlers on dropdown open and close actions<Dropdownbutton="button"onOpen=thishandleDropdownOpenonClose=thishandleDropdownClose>Content</Dropdown>
See also : fyndiq-component-button
API
The component Dropdown
has the following customizable props:
Name | Type | Description | Default value |
---|---|---|---|
button | String or Component | The inside of the dropdown's button. If a String is passed, a <Button> will be shown. |
(required) |
children | Component or Function | Content of the dropdown. If a function is passed, it will be passed a onClose handler. |
(required) |
size | String | Size of the button if button is used in String mode. For values, see Button 's API |
Button's default |
position | String | Position of the dropdown, relatively to the button. One of bl , bc , br , tl , tc , tr |
bl |
margin | Number | Distance from the dropdown to the button | 5 |
className | String | Class name to give to the root element | `` |
wrapperClassName | String | Class name to give to the wrapper | `` |
disabled | Boolean | If true, disables the dropdown | false |
noArrow | Boolean | If button is used in String mode, hides the downwards arrow | false |
noWrapperStyle | Boolean | Remove cosmetic styles for the wrapper | false |
opened | Boolean | Allows to externally control the dropdown | false |
hoverMode | Boolean | Opens the dropdown on hover rather than on click | false |
noPropagateClickEvent | Boolean | Stop the propagation of the click event | false |
onOpen | Function | Handler method when the dropdown is opened | |
onClose | Function | Handler method when the dropdown is closed |