linkmore-design
Version:
🌈 🚀lm组件库。🚀
59 lines (57 loc) • 2.03 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireWildcard(require("react"));
var _index = require("../../index");
var _popContext = _interopRequireDefault(require("../popContext"));
var _header = _interopRequireDefault(require("./header"));
const Index = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
const {
item,
onChange,
header
} = (0, _react.useContext)(_popContext.default);
const {
data: dataList,
renderItem,
mode = 'and',
defaultValue = []
} = item;
const [useMode, setMode] = (0, _react.useState)(mode); // 查询关系 or||and
const [useCheck, setCheck] = (0, _react.useState)(defaultValue); // 默认选ä¸
const getModeChange = e => {
setMode(e);
};
const getChange = v => {
setCheck(v);
const checkValue = dataList.filter(o => v.includes(o.value));
const obj = {
...item,
checkValue
};
onChange(v, obj, useMode);
};
_react.default.useImperativeHandle(ref, () => ({
clearTag: getChange
}));
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, header ? /*#__PURE__*/_react.default.createElement(_header.default, {
getChange: getModeChange
}) : null, /*#__PURE__*/_react.default.createElement(_index.Checkbox.Group, {
onChange: getChange,
value: useCheck,
className: "checkbox_roup"
}, /*#__PURE__*/_react.default.createElement(_index.List, {
itemLayout: "horizontal",
dataSource: dataList,
renderItem: v => /*#__PURE__*/_react.default.createElement(_index.List.Item, null, /*#__PURE__*/_react.default.createElement(_index.Checkbox, {
key: v.value,
value: v.value
}, renderItem ? renderItem(v) : v.label))
})));
});
var _default = Index;
exports.default = _default;