zhangxiao
2024-08-07 68b837c7f2f903bc93622f6f9f3ce7ce6c8e3cb2
fix: 知识库上传文件按钮取消
1个文件已修改
86 ■■■■■ 已修改文件
src/views/dmx/knowledgeLib/add.vue 86 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/dmx/knowledgeLib/add.vue
@@ -1,4 +1,3 @@
<template>
  <a-button type="primary" @click="handleClick">
    <template #icon>
@@ -6,12 +5,18 @@
    </template>
    新增文件
  </a-button>
  <a-modal v-model:visible="visible" title="上传文件" @open="handleOpened" @cancel="handleCancel" :ok-loading="loading" @before-ok="handleBeforeOk" title-align="start">
  <a-modal
    v-model:visible="visible"
    title="上传文件"
    @open="handleOpened"
    @cancel="handleCancel"
    :ok-loading="loading"
    @before-ok="handleBeforeOk"
    title-align="start"
  >
    <a-tabs :default-active-key="activeKey" @change="activeKeyChange">
      <a-tab-pane key="1" title="文件">
      </a-tab-pane>
      <a-tab-pane key="2" title="文件夹">
      </a-tab-pane>
      <a-tab-pane key="1" title="文件"> </a-tab-pane>
      <a-tab-pane key="2" title="文件夹"> </a-tab-pane>
    </a-tabs>
    <div class="aUpload">
      <!--          <a-upload :file-list="uploadList" draggable accept=".word, .pdf, .ppt, .excel, .txt, .zip, .rar, .7z, .doc, .docx, .xls, .xlsx, .pptx, .ppt, .pdf, .mp4, .avi, .mp3,.wav, .wma, .wmv, .rm," :custom-request="customRequest" />-->
@@ -30,12 +35,12 @@
</template>
<script lang="ts" setup>
import { onMounted, onBeforeMount, reactive, ref, computed } from "vue";
  import { onMounted, onBeforeMount, reactive, ref, computed } from 'vue';
import axios from 'axios';
import { kbdocumentupload } from "@/api/kbList";
  import { kbdocumentupload } from '@/api/kbList';
import { Message } from '@arco-design/web-vue';
let CancelToken = axios.CancelToken
let source = null
  let CancelToken = axios.CancelToken;
  let source = null;
const visible = ref(false);
const loading = ref(false);
const directory = ref(false);
@@ -48,50 +53,40 @@
  post: '',// 岗位
  txt: '',// 备注
});
const props =  defineProps(['kbobj'])
const emit =  defineEmits(['changeFetchData'])
  const props = defineProps(['kbobj']);
  const emit = defineEmits(['changeFetchData']);
const uploadRef = ref();
const files = ref([]);
console.log(props.kbobj);
const acceptNameList = computed(
  ()=>{
    return '.word, .pdf, .ppt, .excel, .txt, .zip, .rar, .7z, .doc, .docx, .xls, .xlsx, .pptx, .ppt, .pdf, .mp4, .avi, .mp3,.wav, .wma, .wmv, .rm,'
  }
)
  const acceptNameList = computed(() => {
    return '.word, .pdf, .ppt, .excel, .txt, .zip, .rar, .7z, .doc, .docx, .xls, .xlsx, .pptx, .ppt, .pdf, .mp4, .avi, .mp3,.wav, .wma, .wmv, .rm,';
  });
// 上传文件
const submitForm = async(done)=>{
  if (files.value && files.value.length > 0) {
    files.value.map((item) => {
      const formData = new FormData()
        const formData = new FormData();
      formData.append('file', item.file);
      formData.append('kb_id', props.kbobj.id);
      kbdocumentupload(formData).then((res) => {
        if(res.code == 0){
          emit('changeFetchData')
            emit('changeFetchData');
          Message.success('上传成功');
          handleCancel()
            handleCancel();
        }
      })
    })
    done(false)
        });
      });
      done(false);
  }else {
    done(false)
      done(false);
  }
}
  };
const handleSubmit = ({values, errors}) => {
}
  const handleSubmit = ({ values, errors }) => {};
const onChange = (fileList) => {
  files.value = fileList;
};
const handleClick = () => {
  visible.value = true;
@@ -101,34 +96,26 @@
};
const handleCancel = () => {
  visible.value = false;
}
  };
const handleOpened =(el) => {
  // console.log(props.kbobj);
  uploadList.value = [];
  files.value = [];
  loading.value = false;
}
  };
const activeKeyChange = (value)=>{
  activeKey.value = value;
  directory.value = value == '2' ? true : false;
}
onBeforeMount(()=>{
})
onMounted(()=>{
})
  };
  onBeforeMount(() => {});
  onMounted(() => {});
</script>
<script lang="ts">
export default {
  name: 'add',
  methods: {
  }
    methods: {},
};
</script>
@@ -138,5 +125,8 @@
  max-height: 500px;
  overflow: hidden;
  overflow-y: auto;
    :deep(.arco-upload-progress) {
      display: none;
    }
}
</style>