40 lines
1020 B
TypeScript
Raw Normal View History

import uploadService from '@/services/uploadService';
2024-01-17 09:37:01 +08:00
import type { UploadProps } from 'antd';
import { Button, Upload } from 'antd';
import React from 'react';
interface PropsType {
kb_id: string;
getKfList: () => void;
}
type UploadRequestOption = Parameters<
NonNullable<UploadProps['customRequest']>
>[0];
2024-01-17 09:37:01 +08:00
const FileUpload: React.FC<PropsType> = ({ kb_id, getKfList }) => {
const createRequest: (props: UploadRequestOption) => void = async function ({
file,
onSuccess,
onError,
}) {
const { retcode, data } = await uploadService.uploadFile(file, kb_id);
if (retcode === 0) {
onSuccess && onSuccess(data, file);
} else {
onError && onError(data);
}
getKfList && getKfList();
};
const uploadProps: UploadProps = {
customRequest: createRequest,
showUploadList: false,
};
return (
<Upload {...uploadProps}>
<Button type="link"></Button>
</Upload>
);
};
2024-01-17 09:37:01 +08:00
export default FileUpload;