Blame view

Yi.Vben5.Vue3/packages/effects/common-ui/src/components/loading/loading.vue 822 Bytes
515fceeb   “wangming”   框架初始化
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
  <script lang="ts" setup>
  import { VbenLoading } from '@vben-core/shadcn-ui';
  import { cn } from '@vben-core/shared/utils';
  
  interface LoadingProps {
    class?: string;
    /**
     * @zh_CN 最小加载时间
     * @en_US Minimum loading time
     */
    minLoadingTime?: number;
  
    /**
     * @zh_CN loading状态开启
     */
    spinning?: boolean;
    /**
     * @zh_CN 文字
     */
    text?: string;
  }
  
  defineOptions({ name: 'Loading' });
  const props = defineProps<LoadingProps>();
  </script>
  <template>
    <div :class="cn('relative min-h-20', props.class)">
      <slot></slot>
      <VbenLoading
        :min-loading-time="props.minLoadingTime"
        :spinning="props.spinning"
        :text="props.text"
      >
        <template v-if="$slots.icon" #icon>
          <slot name="icon"></slot>
        </template>
      </VbenLoading>
    </div>
  </template>