Some checks failed
CI / Test (ubuntu-latest) (push) Has been cancelled
CI / Test (windows-latest) (push) Has been cancelled
CI / Lint (ubuntu-latest) (push) Has been cancelled
CI / Lint (windows-latest) (push) Has been cancelled
CI / Check (ubuntu-latest) (push) Has been cancelled
CI / Check (windows-latest) (push) Has been cancelled
CodeQL / Analyze (javascript-typescript) (push) Has been cancelled
Deploy Website on push / Deploy Push Playground Ftp (push) Has been cancelled
Deploy Website on push / Deploy Push Docs Ftp (push) Has been cancelled
Deploy Website on push / Deploy Push Antd Ftp (push) Has been cancelled
Deploy Website on push / Deploy Push Element Ftp (push) Has been cancelled
Deploy Website on push / Deploy Push Naive Ftp (push) Has been cancelled
Release Drafter / update_release_draft (push) Has been cancelled
CI / CI OK (push) Has been cancelled
Deploy Website on push / Rerun on failure (push) Has been cancelled
Lock Threads / action (push) Has been cancelled
Issue Close Require / close-issues (push) Has been cancelled
Close stale issues / stale (push) Has been cancelled
40 lines
822 B
Vue
40 lines
822 B
Vue
<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>
|