list.vue 774 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. <template>
  2. <div class="uploader-list">
  3. <slot :file-list="fileList">
  4. <ul>
  5. <li v-for="file in fileList" :key="file.id">
  6. <uploader-file :file="file" :list="true"></uploader-file>
  7. </li>
  8. </ul>
  9. </slot>
  10. </div>
  11. </template>
  12. <script>
  13. import { uploaderMixin } from '../common/mixins'
  14. import UploaderFile from './file.vue'
  15. const COMPONENT_NAME = 'uploader-list'
  16. export default {
  17. name: COMPONENT_NAME,
  18. mixins: [uploaderMixin],
  19. computed: {
  20. fileList () {
  21. return this.uploader.fileList
  22. }
  23. },
  24. components: {
  25. UploaderFile
  26. }
  27. }
  28. </script>
  29. <style>
  30. .uploader-list {
  31. position: relative;
  32. }
  33. .uploader-list > ul {
  34. list-style: none;
  35. margin: 0;
  36. padding: 0
  37. }
  38. </style>