UNPKG

fx-form-widget

Version:
60 lines (52 loc) 1.7 kB
import _Descriptions from "antd/es/descriptions"; import React from "react"; import ImageList from "../imageList"; import FileList from '../fileList'; var Item = _Descriptions.Item; // 需要独占一行的组件(图片以及附件和子表单以及分组); export var blockComponent = ['uploadPic', 'uploadFile']; // 渲染图片组件 var renderImages = function renderImages(images) { if (!Array.isArray(images)) return images; return /*#__PURE__*/React.createElement(ImageList, { images: images }); }; // 渲染附件组件 var renderFiles = function renderFiles(files) { if (!Array.isArray(files)) return files; return /*#__PURE__*/React.createElement(FileList, { files: files }); }; // 渲染评分组件 var renderRate = function renderRate(value) { return value ? value + "\u5206" : '-'; }; // 渲染颜色 var renderColor = function renderColor() { return ''; }; // 渲染时间选择器 var renderDatePicker = function renderDatePicker(value) { return value ? String(value) : '-'; }; // 渲染值为数组的组件 var renderValueIsArray = function renderValueIsArray(value) { return value.join('/'); }; var widgetTypeMap = new Map([['uploadPic', renderImages], ['uploadFile', renderFiles], ['rate', renderRate], ['datePicker', renderDatePicker], ['refill', renderColor]]); // 渲染不一样的组件类型 export var renderWidget = function renderWidget(widgetType, value) { var renderComponent = widgetTypeMap.get(widgetType); if (renderComponent) { return renderComponent(value); } if (Array.isArray(value)) { return renderValueIsArray(value); } if (value === null || value === void 0) { return '-'; } return value; };