qt-public-ui
Version:
新设计规范下业务组件库
47 lines (46 loc) • 1.58 kB
JavaScript
import React from 'react';
import { OptionProps } from 'antd/lib/select';
import { Checkbox } from 'antd';
import classnames from 'classnames';
export { OptionProps };
var MultiOption = function MultiOption(props) {
var children = props.children,
value = props.value,
selectValue = props.selectValue,
_props$disabled = props.disabled,
disabled = _props$disabled === void 0 ? false : _props$disabled,
className = props.className;
var multiOptionCheckboxChange = function multiOptionCheckboxChange(_value) {
var _selectValue = [].concat(selectValue);
var optionChange = props.optionChange;
if (_selectValue.includes(_value)) {
var _index = _selectValue.findIndex(function (v) {
return v === _value;
});
_selectValue.splice(_index, 1);
} else {
_selectValue.push(_value);
}
optionChange(_selectValue);
};
// cxw觉得这里有问题
return /*#__PURE__*/React.createElement("div", {
title: children,
className: classnames('um-multi-option', {
'um-multi-option-disabled': disabled,
className: className
}),
onClick: function onClick() {
!disabled && multiOptionCheckboxChange(value);
}
}, /*#__PURE__*/React.createElement(Checkbox, {
checked: selectValue.includes(value),
disabled: disabled
}), /*#__PURE__*/React.createElement("div", {
className: classnames('um-multi-option-label', {
'um-multi-option-label-checked': selectValue.includes(value)
})
}, children));
};
MultiOption.displayName = 'MultiOption';
export default MultiOption;