You've already forked DataMate
feat(KnowledgeItemEditor): 添加文件上传替换功能的加载状态
- 添加 loading 状态用于控制文件上传和替换操作 - 在文件上传前设置 loading 状态为 true - 在文件替换前设置 loading 状态为 true - 在操作完成后通过 finally 块重置 loading 状态 - 将 loading 状态绑定到确认按钮的 confirmLoading 属性
This commit is contained in:
@@ -31,6 +31,7 @@ export default function KnowledgeItemEditor({
|
||||
}) {
|
||||
const [fileList, setFileList] = useState<UploadFile[]>([]);
|
||||
const [replaceFileList, setReplaceFileList] = useState<UploadFile[]>([]);
|
||||
const [loading, setLoading] = useState(false);
|
||||
const isFileItem =
|
||||
data?.contentType === KnowledgeContentType.FILE ||
|
||||
data?.sourceType === KnowledgeSourceType.FILE_UPLOAD;
|
||||
@@ -97,6 +98,7 @@ export default function KnowledgeItemEditor({
|
||||
message.warning("请先选择文件");
|
||||
return;
|
||||
}
|
||||
setLoading(true);
|
||||
const formData = new FormData();
|
||||
fileList.forEach((file) => {
|
||||
const origin = file.originFileObj as File | undefined;
|
||||
@@ -126,6 +128,7 @@ export default function KnowledgeItemEditor({
|
||||
message.warning("请先选择要替换的文件");
|
||||
return;
|
||||
}
|
||||
setLoading(true);
|
||||
const formData = new FormData();
|
||||
formData.append("file", replaceFile);
|
||||
await replaceKnowledgeItemFileUsingPut(setId, data.id, formData);
|
||||
@@ -137,6 +140,8 @@ export default function KnowledgeItemEditor({
|
||||
onSuccess();
|
||||
} catch {
|
||||
message.error("操作失败,请重试");
|
||||
} finally {
|
||||
setLoading(false);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -153,6 +158,7 @@ export default function KnowledgeItemEditor({
|
||||
width={860}
|
||||
maskClosable={false}
|
||||
okButtonProps={{ disabled: readOnly }}
|
||||
confirmLoading={loading}
|
||||
>
|
||||
<Form layout="vertical" disabled={readOnly}>
|
||||
{isCreateMode && (
|
||||
|
||||
Reference in New Issue
Block a user