zjk
2026-07-01 e16a38fb5b27a89ff10d0652ce3dc353b8856c1e
fix: 修改版本管理上传取消时的loading
1个文件已修改
71 ■■■■■ 已修改文件
src/views/system/appVersion/appVersionManage/index.vue 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/appVersion/appVersionManage/index.vue
@@ -245,9 +245,30 @@
  })
}
let androidAbortController: AbortController | null = null
let iosAbortController: AbortController | null = null
function resetFormAndUploads() {
  if (androidAbortController) {
    androidAbortController.abort()
    androidAbortController = null
  }
  if (iosAbortController) {
    iosAbortController.abort()
    iosAbortController = null
  }
  androidUploading.value = false
  iosUploading.value = false
  resetForm()
}
function handleCancel() {
  showForm.value = false
  resetForm()
  resetFormAndUploads()
}
function handleClose() {
  resetFormAndUploads()
}
function beforeUploadApk(data: { file: UploadFileInfo, fileList: UploadFileInfo[] }) {
@@ -259,6 +280,11 @@
}
async function customRequestAndroid(options: any) {
  if (androidAbortController) {
    androidAbortController.abort()
  }
  androidAbortController = new AbortController()
  androidUploading.value = true
  logAppVersionUpload('android upload triggered', {
    fileName: options?.file?.name,
@@ -272,7 +298,10 @@
  }
  try {
    // 安卓包改为前端直传:先换取上传地址,再直接上传到 OSS
    const res = await customDirectUploadRequest(options as UploadCustomRequestOptions)
    const res = await customDirectUploadRequest({
      ...options,
      signal: androidAbortController.signal,
    } as UploadCustomRequestOptions)
    if (!res) {
      logAppVersionUpload('android upload result empty')
      formModel.value.androidFiles = []
@@ -297,6 +326,11 @@
}
async function customRequestIos(options: any) {
  if (iosAbortController) {
    iosAbortController.abort()
  }
  iosAbortController = new AbortController()
  iosUploading.value = true
  logAppVersionUpload('ios upload triggered', {
    fileName: options?.file?.name,
@@ -310,7 +344,10 @@
  }
  try {
    // iOS 包改为前端直传:上传成功后将 fileId 存到文件项 id 字段
    const res = await customDirectUploadRequest(options as UploadCustomRequestOptions)
    const res = await customDirectUploadRequest({
      ...options,
      signal: iosAbortController.signal,
    } as UploadCustomRequestOptions)
    if (!res) {
      logAppVersionUpload('ios upload result empty')
      formModel.value.iosFiles = []
@@ -392,21 +429,19 @@
      </div>
      <n-modal
        :show="showForm"
        :mask-closable="false"
        preset="card"
        :title="formMode === 'add' ? '新增版本号' : '查看版本号'"
        style="width: 600px"
        :segmented="{
          content: true,
          action: true,
        }"
        :content-style="{
          padding: '16px 24px 0px 24px',
        }"
        @close="handleCancel"
      >
        <n-form
          v-model:show="showForm"
          :mask-closable="false"
          preset="card"
          :title="formMode === 'add' ? '新增版本号' : '查看版本号'"
          style="width: 600px"
          :segmented="{ content: true, action: true }"
          :content-style="{
            padding: '16px 24px 0px 24px',
          }"
          :on-after-leave="handleClose"
          :on-update:show="(val) => { if (!val) handleCancel() }"
        >
          <n-form
          ref="formRef"
          :model="formModel"
          :rules="rules"