All Downloads are FREE. Search and download functionalities are using the official Maven repository.

components.actions.Dropdowns.Dropdown.jsx Maven / Gradle / Ivy

There is a newer version: 7.28.3
Show newest version
import React from 'react'
import PropTypes from 'prop-types'
import { ButtonDropdown, DropdownToggle, DropdownMenu } from 'reactstrap'

/**
 * Дропдаун
 * @reactProps {string} id
 * @reactProps {node} children - элкменты меню дропдауна
 * @reactProps {string} color - цвет кнопки дропдауна
 * @reactProps {string} title - заголовок кнопки
 */
class Dropdown extends React.Component {
    state = {
        dropdownOpen: false,
    }

    /**
   * смена видимости меню дропдауна
   */
    toggle = () => {
        const { dropdownOpen } = this.state

        this.setState({
            dropdownOpen: !dropdownOpen,
        })
    }

    /**
     * Базовый рендер
     */
    render() {
        const { color, title, size, children, disabled, id } = this.props
        const { dropdownOpen } = this.state

        return (
            
                
                    {title}
                
                {children}
            
        )
    }
}

Dropdown.propTypes = {
    color: PropTypes.string,
    size: PropTypes.string,
    title: PropTypes.node,
    disabled: PropTypes.bool,
    id: PropTypes.string,
    children: PropTypes.node,
}

Dropdown.defaultProps = {
    disabled: false,
}

export default Dropdown




© 2015 - 2025 Weber Informatics LLC | Privacy Policy