|
|
@@ -1,5 +1,6 @@
|
|
|
import { defineStore } from "pinia";
|
|
|
import { ref } from "vue";
|
|
|
+import { ElMessage } from "element-plus";
|
|
|
|
|
|
let progressTimer: ReturnType<typeof setInterval> | null = null;
|
|
|
let activeController: AbortController | null = null;
|
|
|
@@ -47,6 +48,12 @@ export const useSimpleUploadOverlayStore = defineStore("simple-upload-overlay",
|
|
|
function userCancel() {
|
|
|
activeController?.abort();
|
|
|
dismiss();
|
|
|
+ ElMessage.info("取消上传");
|
|
|
+ }
|
|
|
+
|
|
|
+ /** 供 skipSimpleUploadOverlay 的上传与 beginUpload 配套,把 fetch 绑到同一 AbortSignal */
|
|
|
+ function getActiveAbortSignal(): AbortSignal | undefined {
|
|
|
+ return activeController?.signal;
|
|
|
}
|
|
|
|
|
|
return {
|
|
|
@@ -57,6 +64,7 @@ export const useSimpleUploadOverlayStore = defineStore("simple-upload-overlay",
|
|
|
beginUpload,
|
|
|
bumpToComplete,
|
|
|
dismiss,
|
|
|
- userCancel
|
|
|
+ userCancel,
|
|
|
+ getActiveAbortSignal
|
|
|
};
|
|
|
});
|