UNPKG

lm-form

Version:

* 作者:liuduan * 邮箱:liuduan.05.05@163.com * 版本:**`1.0.2`**

50 lines (45 loc) 1.46 kB
import React from 'react'; import PropTypes from 'prop-types'; import Radio from './radio'; const Radiogroup = props => { const { data, checked, disabled, ...others } = props; const renderRadio = (data) => { let res; if ('checked' in props) { res = data.map((i, index) => <Radio key={index} label={i.label} value={i.value} checked={checked === `${i.value}`} disabled={'disabled' in i ? i.disabled : disabled} {...others} />) } else { res = data.map((i, index) => <Radio key={index} label={i.label} value={i.value} disabled={'disabled' in i ? i.disabled : disabled} {...others} />) } return res; } return ( <div style={{ display: props.inline === false ? 'block' : 'flex', alignItems: 'center', flexWrap: 'wrap' }}> {data.length ? renderRadio(data) : null} </div> ); }; Radiogroup.propTypes = { data: PropTypes.array.isRequired, // 数据 disabled: PropTypes.bool, // checkbox 禁用 checked: PropTypes.any // 单选选中值 }; Radiogroup.defaultProps = { data: [], disabled: false }; export default Radiogroup;