Skip to content

Button 按钮

引入

vue
import { Button } from '@/components/ui/button'

Props

属性类型默认值说明
variant'primary' | 'secondary' | 'danger' | 'ghost''primary'按钮风格
size'sm' | 'md' | 'lg''md'按钮尺寸
loadingbooleanfalse加载态
disabledbooleanfalse禁用
iconstring图标名称

用法示例

vue
<template>
  <Button variant="primary" @click="handleSubmit">
    提交订单
  </Button>
  <Button variant="danger" :loading="isDeleting" @click="handleDelete">
    删除
  </Button>
  <Button variant="ghost" size="sm" icon="search">
    搜索
  </Button>
</template>

业务规则

  1. 支付相关页面只能用 variant="primary"
  2. 删除操作必须加二次确认弹窗 (ElMessageBox.confirm)
  3. loading 时按钮自动 disabled,阻止重复提交
  4. 表单提交按钮必须加 loading 状态