Files
vue3/stories/UploadList.stories.ts

47 lines
1.0 KiB
TypeScript

import type { Meta, StoryObj } from '@storybook/vue3'
import ThUploadList from '../packages/upload-list/index.vue'
import avatar from './assets/avatar.jpeg'
// 模拟2秒钟的接口请求
function request(formData: FormData) {
let name = '佚名文件'
let url = avatar
const fileName = formData.get('name')
const file = formData.get('file')
if (typeof fileName === 'string') {
name = fileName
}
else if (typeof file !== 'string' && file) {
name = file.name
url = URL.createObjectURL(file)
}
return new Promise<FileVO>((resolve) => {
setTimeout(() => {
resolve({
id: Date.now(),
name,
url,
createdBy: 'user',
})
}, 2000)
})
}
const meta = {
title: '表单组件/UploadList',
component: ThUploadList,
args: {
accept: '*',
fileList: [],
request,
filePath: '/',
},
tags: ['autodocs'],
} satisfies Meta<typeof ThUploadList>
export default meta
type Story = StoryObj<typeof meta>
export const Base: Story = {
name: '基本使用',
}