Sha256: a3c9dd1ba185fb31a64d1168688813fa19115c65e5af055d27d0435407c7acab
Contents?: true
Size: 826 Bytes
Versions: 123
Compression:
Stored size: 826 Bytes
Contents
import React from 'react'; import PropTypes from 'prop-types'; const Select = ({ placeholder, onChange, options, disabled, value, }) => { const renderOptions = arr => arr.map(({ name, id }) => ( <option key={id} value={id}> {name} </option> )); return ( <select disabled={disabled} className="form-control" value={value} onChange={onChange} > <option value="" disabled >{placeholder}</option> {renderOptions(options)} </select> ); }; export default Select; Select.propTypes = { onChange: PropTypes.func.isRequired, options: PropTypes.arrayOf(PropTypes.object).isRequired, disabled: PropTypes.bool, placeholder: PropTypes.string.isRequired, value: PropTypes.string, }; Select.defaultProps = { disabled: false, value: '', };
Version data entries
123 entries across 123 versions & 1 rubygems