UNPKG

linkmore-design

Version:

🌈 🚀lm组件库。🚀

63 lines (61 loc) 1.8 kB
"use strict"; 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 _context = _interopRequireDefault(require("../context")); var _Popover = _interopRequireDefault(require("./Popover")); var _ToggleFilter = _interopRequireDefault(require("./ToggleFilter")); const BaseFilter = () => { const { state, dispatch, data, getChange } = (0, _react.useContext)(_context.default); const [useList, setList] = (0, _react.useState)(data); // 页面展示的搜索项 // 下拉框改变事件 const onChange = async ({ field, value, mapItem }) => { const checkValue = { ...state.checkValue, [field]: value }; // 关联筛选 if (mapItem.relation) { delete checkValue[mapItem.relation]; } const checked = { ...state.checked, [field]: mapItem }; dispatch({ type: 'changeCheckValue', checkValue }); dispatch({ type: 'changeChecked', checked }); getChange?.(checkValue); }; return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, useList?.filter(v => !!v.fixed).map(item => { const obj = data.find(o => o.field === item.field); return /*#__PURE__*/_react.default.createElement(_Popover.default, { key: item.field, item: obj, getChange: onChange }); }), /*#__PURE__*/_react.default.createElement(_ToggleFilter.default, { useList: useList, setList: setList })); }; var _default = BaseFilter; exports.default = _default;