wupengfei
2 天以前 fb243f3345c6f3ed7e7c8c2d98c39b5afc782b9a
apps/cMiniApp/src/components/Uploader/Uploader.vue
@@ -4,6 +4,7 @@
    v-model:file-list="innerFileList"
    multiple
    :media-type="['image']"
    :sourceType="sourceType"
    :before-xhr-upload="beforeXhrUpload"
    @failure="handleFailure"
    :maximize="maximize"
@@ -17,12 +18,16 @@
    <template #extra-img>
      <slot name="extra-img"></slot>
    </template>
    <template #item="{ item }">
      <slot name="item" :item="item"></slot>
    </template>
  </nut-uploader>
  <nut-uploader
    v-else
    v-model:file-list="innerFileList"
    multiple
    :media-type="['image']"
    :sourceType="sourceType"
    :before-xhr-upload="beforeXhrUpload"
    @failure="handleFailure"
    :maximize="maximize"
@@ -32,6 +37,9 @@
    </template>
    <template #extra-img="extraImgProps">
      <slot name="extra-img" v-bind="extraImgProps"></slot>
    </template>
    <template #item="{ item }">
      <slot name="item" :item="item"></slot>
    </template>
  </nut-uploader>
</template>
@@ -47,14 +55,18 @@
  name: 'Uploader',
});
type SourceType = 'album' | 'camera';
type Props = {
  fileList: FileItem[];
  onMySuccess?: (file: FileItem) => any;
  limitFileSize?: number;
  sourceType?: SourceType[];
};
const props = withDefaults(defineProps<Props>(), {
  limitFileSize: 2,
  sourceType: () => ['album', 'camera'],
});
const emit = defineEmits<{