UNPKG

mobile-more

Version:

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

43 lines 1.75 kB
import _extends from "@babel/runtime/helpers/esm/extends"; import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties"; var _excluded = ["placeholder", "renderCurrentValue", "mapKeys", "columns", "value", "separator"]; import React from 'react'; import { Input, Picker } from 'antd-mobile'; import transformKeys from "../utils/transformKeys"; var SuperPicker = function SuperPicker(_ref) { var placeholder = _ref.placeholder, renderCurrentValue = _ref.renderCurrentValue, mapKeys = _ref.mapKeys, _ref$columns = _ref.columns, outColumns = _ref$columns === void 0 ? [] : _ref$columns, value = _ref.value, _ref$separator = _ref.separator, separator = _ref$separator === void 0 ? ' - ' : _ref$separator, restProps = _objectWithoutProperties(_ref, _excluded); var columns = React.useMemo(function () { var realColumns = typeof outColumns === 'function' ? outColumns(value) : outColumns; if (mapKeys) { return realColumns.map(function (item) { return transformKeys(item, mapKeys); }); } return realColumns; }, [mapKeys, outColumns, value]); return /*#__PURE__*/React.createElement(Picker, _extends({ columns: columns, value: value, 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, { readOnly: true, value: valueStr, placeholder: placeholder }); }); }; export default SuperPicker;