NoData.vue 664 B

1234567891011121314151617181920212223242526272829
  1. <template>
  2. <div @click="$emit('click')" :class="['le-no-data', size, isFull ? 'le-no-data--full' : '']">
  3. <Icon iconClass="le-no_data" class="le-no-data__img" v-if="isShow" />
  4. <div class="message" v-html="message || $t('le.noData')" />
  5. <!-- 额外处理 -->
  6. <slot name="extraContent" />
  7. </div>
  8. </template>
  9. <script setup name="LeNoData" lang="ts">
  10. import Icon from '@/components/Icon.vue'
  11. defineEmits(['click'])
  12. const props = defineProps({
  13. message: {
  14. default: ''
  15. },
  16. size: {
  17. type: String, // [large, default, small]
  18. default: 'default'
  19. },
  20. isFull: {
  21. type: Boolean,
  22. default: false
  23. },
  24. isShow: {
  25. type: Boolean,
  26. default: true
  27. }
  28. })
  29. </script>