UNPKG

mobile-more

Version:

基于 antd-mobile v5 扩展移动端 UI 组件

40 lines 1.63 kB
import _extends from "@babel/runtime/helpers/esm/extends"; import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties"; var _excluded = ["placeholder", "value", "options", "mapKeys", "renderCurrentValue", "separator"]; import React from 'react'; import { CascadePicker, Input } from 'antd-mobile'; import transformKeys from "../utils/transformKeys"; var SuperCascadePicker = function SuperCascadePicker(_ref) { var placeholder = _ref.placeholder, value = _ref.value, _ref$options = _ref.options, outOptions = _ref$options === void 0 ? [] : _ref$options, mapKeys = _ref.mapKeys, renderCurrentValue = _ref.renderCurrentValue, _ref$separator = _ref.separator, separator = _ref$separator === void 0 ? '/' : _ref$separator, restProps = _objectWithoutProperties(_ref, _excluded); var options = React.useMemo(function () { if (mapKeys) { return transformKeys(outOptions, mapKeys); } return outOptions; }, [mapKeys, outOptions]); return /*#__PURE__*/React.createElement(CascadePicker, _extends({ value: value, options: options, destroyOnClose: true }, restProps), function (items) { var valueStr = typeof renderCurrentValue === 'function' ? renderCurrentValue(value, items) : items.filter(function (item) { return !!item; }).map(function (item) { return item === null || item === void 0 ? void 0 : item.label; }).join(separator); return /*#__PURE__*/React.createElement(Input, { value: valueStr, placeholder: placeholder, readOnly: true }); }); }; export default SuperCascadePicker;