UNPKG

hot-form

Version:

A project developed based on ant-design-vue and vant whitch do some things on create/render/modify and etc. for forms. Also can custom some component on the form items if you want. 一个基于antdv/vant开发的创建表单组件,包含表单渲染、表单编辑页面、以及植入自定义附加内容的组件

88 lines (83 loc) 2.32 kB
import { imgCustomRequest, fileCustomRequest, fileProxy, } from '@/components/form/props.config.js'; // 检测平台的颜色方案是是否为暗色 // const PLATFORM_IS_DARK = window.matchMedia('(prefers-color-scheme: dark)').matches; const PLATFORM_IS_DARK = false; export default { value: [String, Number], // 是否可见 visible: { type: Boolean, default: true, }, // 模式 'classic' | 'inline' mode: { type: String, validator: value => ['inline', 'classic'].includes(value), default: 'classic', }, // 内容区显示模式,对应 `config.content_css` 字段 contentMode: { type: String, validator: value => ['dark', 'document', 'writer', 'default'].includes(value), default: PLATFORM_IS_DARK ? 'dark' : 'default', }, // 皮肤,可选 'light' | 'dark' skin: { type: String, validator: value => ['light', 'dark'].includes(value), default: PLATFORM_IS_DARK ? 'dark' : 'light', }, // 富文本配置项,会覆盖和并默认配置 config: Object, // 图片上传方法 ...imgCustomRequest, // 文件上传方法 ...fileCustomRequest, // 文件代理 ...fileProxy, /* // 上传 http 方法 http: { type: Function, default: upload, }, */ // 上传接受类型 accept: { type: Object, default: () => ({ image: ['image/*'], file: ['.txt', '.docx', '.doc', '.xlsx', '.xls', '.csv', '.pptx', '.ppt', '.pdf', '.zip', '.rar', '.md'], media: ['video/*', 'audio/*'], }), }, // 图片大小上限 maxSize: { // 图片大小 type: Number, default: 52428800, }, // 图片验证规则 imageRules: { type: Array, validator: rules => Array.isArray(rules) && rules.every(rule => typeof rule.validator === 'function'), }, // 文件验证规则 fileRules: { type: Array, validator: rules => Array.isArray(rules) && rules.every(rule => typeof rule.validator === 'function'), }, // 文本自动保存到 localStorage 的键名前缀 autoSavePrefix: { type: String, default: 'tinymce-autosave-{path}{query}-{id}-', }, // 富文本所需的静态资源 baseURL: { type: String, default: './tinymce', }, documentURL: String, };