guhongwei 2 rokov pred
rodič
commit
1df7b0d805

+ 10 - 4
src/components/common/c-upload.vue

@@ -1,13 +1,15 @@
 <template>
   <div id="c-upload">
-    <van-uploader v-model="file" multiple :max-count="count" :accept="accept" :before-read="beforeRead" :after-read="afterRead">
+    <!-- <van-uploader v-model="file" multiple :max-count="count" :accept="accept" :before-read="beforeRead" :after-read="afterRead">
       <van-button type="primary" size="small">上传文件</van-button>
-    </van-uploader>
+    </van-uploader> -->
+    <van-uploader v-model="file" multiple :max-count="count" :accept="accept" :before-read="beforeRead" :after-read="afterRead" :before-delete="beforeDelete" />
   </div>
 </template>
 
 <script setup lang="ts">
 // 基础
+import _ from 'lodash';
 import { toRefs } from 'vue';
 import { onMounted } from 'vue';
 import { showToast } from 'vant';
@@ -15,7 +17,7 @@ import axios from 'axios';
 
 const props = defineProps({
   file: { type: Array, default: () => [] },
-  count: { type: Number, default: () => 1 },
+  count: { type: Number, default: () => 2 },
   accept: { type: String, default: () => '*' }, //image/png,image/jpeg
   url: { type: String, default: () => '/files/basic/policyfile/upload' }
 });
@@ -56,8 +58,12 @@ const afterRead = async (e: { file: any }) => {
     const { id, name, uri } = res.data;
     const obj = { id, name, uri, url: `${import.meta.env.VITE_APP_HOST}/${uri}` };
     file.value.push(obj);
-    console.log(file.value);
   }
 };
+// 文件删除
+const beforeDelete = (e) => {
+  const index = file.value.findIndex((f) => _.isEqual(f, e));
+  if (index > -1) file.value.splice(index, 1);
+};
 </script>
 <style scoped lang="scss"></style>

+ 16 - 14
src/views/policyfile/detail.vue

@@ -20,6 +20,11 @@
                   <vUpload :file="form.file"></vUpload>
                 </template>
               </van-field>
+              <van-field name="files" label="文件2">
+                <template #input>
+                  <vUpload :file="form.files"></vUpload>
+                </template>
+              </van-field>
             </van-cell-group>
             <div class="btn">
               <van-button type="primary" size="small" native-type="submit"> 提交保存 </van-button>
@@ -48,7 +53,7 @@ const route = useRoute();
 
 const id: Ref<any> = ref('');
 // 表单
-const form: Ref<any> = ref({});
+const form: Ref<any> = ref({ file: [], files: [] });
 
 // 请求
 onMounted(async () => {
@@ -66,20 +71,17 @@ const search = async () => {
 // 保存
 const toSave = async (e) => {
   let res: IQueryResult;
-  if (id.value) res = await polAxios.update({ ...e, _id: id.value });
-  else res = await polAxios.create(e);
-  if (res.errcode == '0') {
-    showToast({ message: '信息删除成功', type: 'success', duration: 500 });
-    toBack();
-  } else {
-    showToast({ message: `${res.errmsg}`, type: 'fail', duration: 500 });
-  }
+  console.log(e);
+  // if (id.value) res = await polAxios.update({ ...e, _id: id.value });
+  // else res = await polAxios.create(e);
+  // if (res.errcode == '0') {
+  //   showToast({ message: '信息删除成功', type: 'success', duration: 500 });
+  //   toBack();
+  // } else {
+  //   showToast({ message: `${res.errmsg}`, type: 'fail', duration: 500 });
+  // }
 };
-// 上传前置
-// const beforeRead = (e) => {
-//   console.log('1');
-//   console.log(e);
-// };
+
 // 返回;
 const toBack = () => {
   window.history.go(-1);