Skip to content

按钮 Button


按钮用于开始一个即时操作

何时使用

  • 当需要添加一个操作按钮时

基本使用

七种类型


Show Code
vue
<template>
  <Space>
    <Button>Default Button</Button>
    <Button effect="reverse">Reverse Button</Button>
    <Button type="primary">Primary Button</Button>
    <Button type="danger">Danger Button</Button>
    <Button type="dashed">Dashed Button</Button>
    <Button type="text">Text Button</Button>
    <Button type="link">Link Button</Button>
  </Space>
</template>

禁用

Show Code
vue
<template>
  <Space>
    <Button disabled>Default Button</Button>
    <Button disabled effect="reverse">Reverse Button</Button>
    <Button disabled type="primary">Primary Button</Button>
    <Button disabled type="danger">Danger Button</Button>
    <Button disabled type="dashed">Dashed Button</Button>
    <Button disabled type="text">Text Button</Button>
    <Button disabled type="link">Link Button</Button>
  </Space>
</template>

三种尺寸

Show Code
vue
<template>
  <Space>
    <Button size="small">Small</Button>
    <Button>Default</Button>
    <Button size="large">Large</Button>
  </Space>
</template>

自定义样式

Show Code
vue
<script setup lang="ts">
function onClick (e: Event) {
  console.log('click')
}
</script>
<template>
  <Button style="width: 120px; height: 40px;" size="large">
    <p style="font-size: 18px;">自定义样式</p>
  </Button>
</template>

加载中状态


Loading state:

Show Code
vue
<script setup lang="ts">
import { ref } from 'vue'
const loading = ref(true)
</script>
<template>
  <Space>
    <Button :loading="loading">Default Button</Button>
    <Button effect="reverse" :loading="loading">Reverse Button</Button>
    <Button type="primary" :loading="loading">Primary Button</Button>
    <Button type="danger" :loading="loading">Danger Button</Button>
    <Button type="dashed" :loading="loading">Dashed Button</Button>
    <Button type="text" :loading="loading">Text Button</Button>
    <Button type="link" :loading="loading">Link Button</Button>
  </Space>
  <br/>
  <Space align="center" style="margin-top: 10px;">
    <h3 style="margin-top: 0;">Loading state: </h3>
    <Switch v-model:checked="loading" />
  </Space>
</template>

居中展示

Show Code
vue
<template>
  <Button center>Default Button</Button>
</template>

APIs

参数说明类型默认值必传
name按钮文本string | slot'按钮'false
type按钮类型'default' | 'primary' | 'danger' | 'dashed' | 'text' | 'link''default'false
effect悬浮变化效果,只有 typedefault 时,effect 才生效'fade' | 'reverse''fade'false
size按钮尺寸'small' | 'middle' | 'large''middle'false
route跳转目标 URL 地址{path?: string, query?: object}{}false
target如何打开目标URL,设置 route 时生效'_self' | '_blank''_self'false
disabled是否禁用booleanfalsefalse
loading是否加载中booleanfalsefalse
center是否将按钮宽度调整为其父宽度并居中展示booleanfalsefalse

Events

事件名称说明参数
click点击按钮时的回调,未设置 route 时生效(e: Event) => void

Released under the MIT License.