Skip to content

Button ​

演示 ​

Button 跨端示例与演示

H5 Live浏览器运行时实时交互

操作层级

语义色

尺寸

状态

形状与布局

交互

按钮保留 44px 默认命中高度和现有语义色。按压使用 140ms 的轻量缩放与内阴影反馈;Ghost 默认透明,仅在 hover 或按压时出现弱背景。减少动态效果时不执行空间缩放。

基础用法 ​

vue
<template>
  <VButton>默认按钮</VButton>
  <VButton tone="primary">
    主要按钮
  </VButton>
  <VButton tone="success">
    成功按钮
  </VButton>
  <VButton tone="warning">
    警告按钮
  </VButton>
  <VButton tone="danger">
    危险按钮
  </VButton>
</template>

变体 ​

vue
<template>
  <VButton variant="solid">
    实心按钮
  </VButton>
  <VButton variant="outline">
    描边按钮
  </VButton>
  <VButton variant="ghost">
    浅色按钮
  </VButton>
  <VButton variant="text">
    文字按钮
  </VButton>
  <VButton plain>
    朴素按钮
  </VButton>
  <VButton hairline plain>
    细边框按钮
  </VButton>
</template>

尺寸 ​

vue
<template>
  <VButton size="sm">
    小号按钮
  </VButton>
  <VButton size="md">
    默认按钮
  </VButton>
  <VButton size="lg">
    大号按钮
  </VButton>
</template>

形状与块级按钮 ​

vue
<template>
  <VButton shape="square">
    直角按钮
  </VButton>
  <VButton shape="round">
    圆角按钮
  </VButton>
  <VButton block>
    块级按钮
  </VButton>
</template>

图标与加载 ​

vue
<template>
  <VButton icon="+">
    新增
  </VButton>
  <VButton icon="✓" icon-position="right">
    完成
  </VButton>
  <VButton loading>
    提交中
  </VButton>
  <VButton loading loading-text="保存中…" />
</template>

自定义颜色与原生类型 ​

vue
<template>
  <VButton color="#07c160">
    自定义颜色
  </VButton>
  <VButton color="var(--brand-action)" foreground-color="#ffffff">
    CSS 变量颜色
  </VButton>
  <VButton native-type="submit">
    提交表单
  </VButton>
  <VButton disabled>
    禁用按钮
  </VButton>
</template>

Props ​

Prop类型默认值描述
variant'solid' | 'outline' | 'ghost' | 'text''solid'视觉变体
tone'default' | 'primary' | 'success' | 'warning' | 'danger''primary'语义色
size'sm' | 'md' | 'lg''md'尺寸
shape'default' | 'square' | 'round''default'形状
plainbooleanfalse朴素按钮,等价于描边视觉
hairlinebooleanfalse细边框标记
blockbooleanfalse宽度占满父容器
iconstringundefined图标文本或图标名,由样式层解释
iconPosition'left' | 'right''left'图标位置
loadingbooleanfalse加载中,自动禁用点击
loadingTextstringundefined加载时替换默认内容
disabledbooleanfalse禁用按钮
colorstringundefined自定义按钮颜色
foregroundColorstringundefined非十六进制实心自定义色必须显式提供的前景色
nativeType'button' | 'submit' | 'reset'undefined原生 button type

Slots ​

Slot描述
default按钮内容
icon自定义图标内容,优先级高于 icon prop

Data Attributes ​

Attribute描述
data-variant当前视觉变体
data-tone当前语义色
data-size当前尺寸
data-shape当前形状
data-loading是否加载中
data-disabled是否禁用
data-plain是否朴素
data-hairline是否细边框
data-block是否块级