组件/Spinner 加载

Spinner 加载

表示不确定等待的旋转指示器

已验证自 0.3.4

用法

基础

示例加载中...

尺寸

size 设置宽高(px)。

示例加载中...

显隐切换

visible 带内置的进出场过渡;v-if 直接挂载或卸载。

示例加载中...

行内等待

用于按钮、行内状态或遮罩内部的短等待。

示例加载中...

最佳实践

  • 只用于不确定的短等待;有数值或阶段进度时用 TxProgressBar,整块首屏加载用 TxLoadingState。
  • 文案放在图标旁边;Spinner 只表达忙碌,不表达完成结果。
  • 需要内置进出场过渡时用 visible;挂载时机由宿主管理时用 v-if。
  • 只有 CSS 动效不适合受限表面时才设置 fallback。
  • 着色时直接在 TxSpinner 上设置 color;父级的 color 不会穿透根节点。

API 参考

属性

属性名类型默认值说明
sizenumber16宽高(px),写入 --tx-spinner-size。
strokeWidthnumber2环形与 SVG 的线宽,写入 --tx-spinner-stroke。
fallbackbooleanfalse渲染 SVG 旋转圆环,替代默认的 ball/ring 动效。
visiblebooleantrue显示或隐藏,带 tx-spinner-visibility 过渡。
labelstring'Loading'状态区域的可访问名,出现时被播报;本地化时覆盖。

概述

  • 根节点是 inline-flex 的 span,带 role="status"、aria-busy="true"、aria-live="polite",以 label 作为 aria-label;不播报完成。
  • visible=false 时,离场过渡结束后不再渲染。
  • fallback 渲染 SVG circle,沿用 size 与 strokeWidth。
  • 根节点默认取 --tx-text-color-secondary 作为颜色。

技术实现

  • 源码:packages/tuffex/packages/components/src/spinner/。
查看源码
packages/tuffex/packages/components/src/spinner/index.ts