mobile-more
Version:
基于 antd-mobile v5 扩展移动端 UI 组件
47 lines • 1.5 kB
JavaScript
import _extends from "@babel/runtime/helpers/esm/extends";
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
var _excluded = ["value", "name", "spaceProps"];
import React, { useMemo } from 'react';
import { castArray, isString } from 'ut2';
import classNames from 'classnames';
import { Space } from 'antd-mobile';
import BizImage from "../BizImage";
import { fieldPrefixClass } from "../../config";
var prefixCls = "".concat(fieldPrefixClass, "-image");
var ImageField = function ImageField(_ref) {
var value = _ref.value,
name = _ref.name,
spaceProps = _ref.spaceProps,
restProps = _objectWithoutProperties(_ref, _excluded);
var values = useMemo(function () {
if (!value) {
return [];
}
return castArray(value).map(function (item) {
if (isString(item)) {
return {
src: item
};
}
return item;
});
}, [value]);
return /*#__PURE__*/React.createElement(Space, _extends({
wrap: true,
block: true
}, spaceProps, {
className: classNames(prefixCls, spaceProps === null || spaceProps === void 0 ? void 0 : spaceProps.className)
}), values.map(function (item, index) {
return /*#__PURE__*/React.createElement(BizImage, _extends({
key: item.src + index,
src: item.src,
name: item.name || name,
width: 72,
height: 72,
fit: "cover",
border: "dashed",
preview: true
}, restProps));
}));
};
export default ImageField;