UNPKG

@farris/ui-vue

Version:

Farris Vue, a Farris Design based Vue3 component library.

102 lines (101 loc) 4.45 kB
/** * Uploader 选择文件上传,支持批量选择文件,通过列表方式展示已选择的附件、附件的进度。 * * @example * ```tsx * import { defineComponent, ref } from 'vue'; * import { FSwitch } from '../../components/switch'; * import { FUploader } from '../../components/uploader'; * * export default defineComponent({ * name: 'ContentFillTsxDemo', * setup() { * * const contentFill = ref(false) * const fileInfos = [ * { id: 'f1', name: '需求文档.docx', size: 18023, createTime: '2024-01-10 10:00:00' }, * { id: 'f2', name: '设计稿.pdf', size: 98023, createTime: '2024-01-11 09:30:00' } * ] * * return () => ( * <> * <div class="mb-3 d-flex align-items-center gap-3"><span>contentFill:</span> * <FSwitch modelValue={contentFill.value} onUpdate:modelValue={(v: any) => { contentFill.value = v; }} /> * <span style="color:#666;font-size:13px">{contentFill ? '填充父容器区域' : '不填充(默认)'}</span></div> * <div style={contentFill ? 'height:200px;border:1px solid #ddd;' : ''}><FUploader contentFill={contentFill.value} fileInfos={fileInfos} /></div> * </> * ); * } * }); * ``` * * @public */ declare const _default: import("vue").DefineComponent<{ [x: string]: any; }, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, "filePreviewEvent" | "fileDownloadEvent" | "previewMultiSelectedEvent" | "selectedEvent" | "fileRemoveEvent" | "fileRemovedEvent" | "fUploadDoneEvent" | "uploadDoneEvent", import("vue").PublicProps, Readonly<{ [x: string]: any; }> & Readonly<{}>, { [x: string]: any; }, {}, { 'f-upload-progress': import("vue").DefineComponent<{ status: import("./components/sub-component.props").UploadProgressStatusType; maxWidth: number; showInfo: boolean; percent: number; }, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{ status: import("./components/sub-component.props").UploadProgressStatusType; maxWidth: number; showInfo: boolean; percent: number; }> & Readonly<{}>, { status: import("./components/sub-component.props").UploadProgressStatusType; maxWidth: number; showInfo: boolean; percent: number; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; 'f-preview-checkbox': import("vue").DefineComponent<{ id: string; disabled: boolean; checked: boolean; }, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "checkedChange"[], "checkedChange", import("vue").PublicProps, Readonly<{ id: string; disabled: boolean; checked: boolean; }> & Readonly<{ onCheckedChange?: ((...args: any[]) => any) | undefined; }>, { id: string; disabled: boolean; checked: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; 'f-file-select': import("vue").DefineComponent<{ disabled: boolean; accept: string; options: import("./composition/type").UploaderOptions; selectText: string; enableMulti: boolean; uploadedCount: number; extendConfig: Record<string, any>; uploadServerToken: string; }, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{ disabled: boolean; accept: string; options: import("./composition/type").UploaderOptions; selectText: string; enableMulti: boolean; uploadedCount: number; extendConfig: Record<string, any>; uploadServerToken: string; }> & Readonly<{}>, { disabled: boolean; accept: string; options: import("./composition/type").UploaderOptions; selectText: string; enableMulti: boolean; uploadedCount: number; extendConfig: Record<string, any>; uploadServerToken: string; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; export default _default;