mobile-more
Version:
基于 antd-mobile v5 扩展移动端 UI 组件
42 lines (41 loc) • 1.69 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
var _react = _interopRequireDefault(require("react"));
var _utilHelpers = require("util-helpers");
var _SuperCascadePicker = _interopRequireDefault(require("../ItemCascadePicker/SuperCascadePicker"));
var _transformKeys = _interopRequireDefault(require("../utils/transformKeys"));
var _excluded = ["value", "mapKeys", "options"];
var AreaCodePicker = function AreaCodePicker(_ref) {
var value = _ref.value,
mapKeys = _ref.mapKeys,
outOptions = _ref.options,
restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
var options = _react.default.useMemo(function () {
var opts = outOptions || [];
if (mapKeys) {
return (0, _transformKeys.default)(opts, mapKeys);
}
return opts;
}, [mapKeys, outOptions]);
var realValue = _react.default.useMemo(function () {
if (typeof value === 'string') {
return (0, _utilHelpers.findTreeSelect)(options, function (item) {
return item.value === value;
}).map(function (item) {
return item.value;
});
}
return value;
}, [options, value]);
return /*#__PURE__*/_react.default.createElement(_SuperCascadePicker.default, (0, _extends2.default)({
value: realValue,
options: options
}, restProps));
};
var _default = exports.default = AreaCodePicker;