Skip to content

Spinner 加载指示器

新粗野主义风格加载旋转器,提供 4 种视觉变体:标准、方块、圆点和条形。

预览

Preview

加载器类型

加载中...
旋转
加载中...
方块
加载中...
条形
加载中...
圆点

加载器尺寸

加载中...
加载中...
默认
加载中...
加载中...
超大

加载器变体

加载中...
默认
加载中...
主要
加载中...
次要
加载中...
强调

安装

pnpm dlx brutx-vue@latest add spinner

用法

Spinner(标准)

vue
<script setup>
import { Spinner } from 'brutx-ui-vue'
</script>

<template>
    <Spinner size="default" variant="default" />
</template>

BlockSpinner

vue
<script setup>
import { BlockSpinner } from 'brutx-ui-vue'
</script>

<template>
    <BlockSpinner size="default" />
</template>

DotsSpinner

vue
<script setup>
import { DotsSpinner } from 'brutx-ui-vue'
</script>

<template>
    <DotsSpinner size="default" />
</template>

BarsSpinner

vue
<script setup>
import { BarsSpinner } from 'brutx-ui-vue'
</script>

<template>
    <BarsSpinner size="default" />
</template>

变体

Spinner 变体

变体说明
default顶部和右侧边框透明,旋转
primary主色边框,旋转
secondary辅助色边框,旋转
accent顶部和右侧强调色边框,旋转

颜色方案

BlockSpinner、BarsSpinner 和 DotsSpinner 支持以下颜色方案:

颜色说明
default默认前景色
primary主色
secondary辅助色
accent强调色
mixed循环使用 primary、secondary、accent、info 多种颜色(仅 BlockSpinner 和 BarsSpinner)

尺寸

所有旋转器类型支持以下尺寸:

尺寸SpinnerBlockBarsDots
smh-5 w-5h-5 w-5h-4gap-1
defaulth-8 w-8h-8 w-8h-6gap-2
lgh-12 w-12h-12 w-12h-8gap-3
xlh-16 w-16h-16 w-16h-12gap-4

动画

各组件使用不同的动画效果:

组件动画类型说明
Spinneranimate-spin旋转动画
BlockSpinneranimate-pulse脉冲动画,4个方块依次延迟
BarsSpinneranimate-pulse脉冲动画,5个条形依次延迟
DotsSpinneranimate-bounce弹跳动画,3个圆点依次延迟

Props

Spinner

属性类型默认值说明
size'sm' | 'default' | 'lg' | 'xl''default'尺寸
variant'default' | 'primary' | 'secondary' | 'accent''default'颜色变体
labelstringt('spinner.loading')无障碍标签文本
classstring自定义样式类

BlockSpinner / BarsSpinner

属性类型默认值说明
size'sm' | 'default' | 'lg' | 'xl''default'尺寸
color'default' | 'primary' | 'secondary' | 'accent' | 'mixed''default'颜色方案,mixed 会循环使用多种颜色
labelstringt('spinner.loading')无障碍标签文本
classstring自定义样式类

DotsSpinner

属性类型默认值说明
size'sm' | 'default' | 'lg' | 'xl''default'尺寸
color'default' | 'primary' | 'secondary' | 'accent''default'颜色方案
labelstringt('spinner.loading')无障碍标签文本
classstring自定义样式类

可访问性

  • ARIA 属性:所有 Spinner 组件均自动添加 role="status" 属性
  • 屏幕阅读器:通过 aria-label 提供屏幕阅读器标签,使用 sr-only 类隐藏视觉文本
  • 自定义标签:默认标签文本为本地化的 "Loading...",可通过 label 属性自定义

蛮力铸就。