layui/example/docs/zh-CN/components/button.md

348 lines
6.6 KiB
Markdown
Raw Normal View History

::: anchor
:::
2022-02-05 19:19:24 +00:00
::: title 基本介绍
:::
::: describe 按钮用于开始一个即时操作。
:::
2021-10-25 17:13:23 +00:00
::: title 基础使用
2021-10-19 14:28:44 +00:00
:::
2021-12-25 14:10:03 +00:00
::: demo 使用 `lay-button` 标签, 创建一个按钮
2021-09-26 22:09:33 +00:00
<template>
<lay-button type="primary">原始按钮</lay-button>
2022-03-23 16:29:51 +00:00
<lay-button>默认按钮</lay-button>
2021-09-26 22:09:33 +00:00
<lay-button type="normal">百搭按钮</lay-button>
<lay-button type="warm">暖色按钮</lay-button>
<lay-button type="danger">警告按钮</lay-button>
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
return {
}
}
}
</script>
:::
2021-10-25 17:13:23 +00:00
::: title 简约按钮
2021-10-19 14:28:44 +00:00
:::
2021-12-25 14:10:03 +00:00
::: demo 使用 `border` 属性设置边框主题
<template>
2022-03-23 16:29:51 +00:00
<lay-button>原始按钮</lay-button>
<lay-button border="green">默认按钮</lay-button>
<lay-button border="blue">百搭按钮</lay-button>
<lay-button border="orange">暖色按钮</lay-button>
<lay-button border="red">警告按钮</lay-button>
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
return {
}
}
}
</script>
:::
2021-10-25 17:13:23 +00:00
::: title 按钮尺寸
2021-10-19 14:28:44 +00:00
:::
2022-02-01 13:48:39 +00:00
::: demo 使用 `size` 属性, 创建指定尺寸的按钮, 可选值 `lg` `sm` `xs`
2021-09-26 22:35:26 +00:00
<template>
<lay-button type="primary" size="lg">原始按钮</lay-button>
<lay-button type="default" size="lg">默认按钮</lay-button>
<lay-button type="normal" size="lg">百搭按钮</lay-button>
<lay-button type="warm" size="lg">暖色按钮</lay-button>
<lay-button type="danger" size="lg">警告按钮</lay-button>
<lay-button type="disabled" size="lg">禁用按钮</lay-button>
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
return {
}
}
}
</script>
2021-09-27 05:35:53 +00:00
:::
2021-10-25 17:13:23 +00:00
::: title 流式按钮
2021-10-19 14:28:44 +00:00
:::
2022-02-01 15:26:28 +00:00
::: demo 使用 `fluid` 属性, 创建最大化按钮
2021-09-27 05:35:53 +00:00
<template>
<lay-button type="primary" fluid="true">最大化按钮</lay-button>
2021-09-27 05:35:53 +00:00
<br/>
<br/>
<lay-button type="default" fluid="true">最大化按钮</lay-button>
2021-09-27 05:35:53 +00:00
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
return {
}
}
}
</script>
:::
2021-10-25 17:13:23 +00:00
::: title 圆角按钮
2021-10-19 14:28:44 +00:00
:::
2022-02-01 15:26:28 +00:00
::: demo 使用 `radius` 属性,创建圆角按钮
2021-09-27 05:35:53 +00:00
<template>
<lay-button type="primary" radius>原始按钮</lay-button>
<lay-button type="default" radius>默认按钮</lay-button>
<lay-button type="normal" radius>百搭按钮</lay-button>
<lay-button type="warm" radius>暖色按钮</lay-button>
<lay-button type="danger" radius>警告按钮</lay-button>
2022-03-15 17:00:37 +00:00
<lay-button disabled radius>禁用按钮</lay-button>
2021-09-27 05:35:53 +00:00
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
return {
}
}
}
</script>
:::
2021-10-25 17:13:23 +00:00
::: title 按钮分组
2021-10-19 14:28:44 +00:00
:::
2021-12-25 14:10:03 +00:00
::: demo 使用 `lay-button-group` 标签, 创建一个按钮组
2021-09-27 05:35:53 +00:00
<template>
<div>
<lay-button-group>
2021-09-27 06:08:05 +00:00
<lay-button type="default">默认按钮</lay-button>
<lay-button type="default">默认按钮</lay-button>
<lay-button type="default">默认按钮</lay-button>
2021-09-27 05:35:53 +00:00
</lay-button-group>
<lay-button-group>
2021-09-27 06:08:05 +00:00
<lay-button type="primary">默认按钮</lay-button>
<lay-button type="primary">默认按钮</lay-button>
<lay-button type="primary">默认按钮</lay-button>
2021-09-27 05:35:53 +00:00
</lay-button-group>
</div>
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
return {
}
}
}
</script>
2021-09-27 06:08:05 +00:00
:::
2021-10-25 17:13:23 +00:00
::: title 图标按钮
2021-10-19 14:28:44 +00:00
:::
2021-12-25 14:10:03 +00:00
::: demo 结合 `lay-icon` 组件, 创建图标按钮
2021-10-03 06:49:04 +00:00
<template>
<lay-button-container>
<lay-button type="primary"><lay-icon type="layui-icon-left"></lay-icon></lay-button>
<lay-button type="primary"><lay-icon type="layui-icon-right"></lay-icon></lay-button>
<lay-button prefix-icon="layui-icon-left" suffix-icon="layui-icon-right"></lay-button>
2021-10-03 06:49:04 +00:00
</lay-button-container>
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
return {
}
}
}
</script>
:::
2021-10-25 17:13:23 +00:00
::: title 按钮容器
2021-10-19 14:28:44 +00:00
:::
2022-02-05 19:19:24 +00:00
::: demo 尽管按钮在同节点并排时会自动拉开间距,但在按钮太多的情况,效果并不是很美好。因为你需要用到按钮容器
2021-09-27 06:08:05 +00:00
<template>
<lay-button-container>
<lay-button type="default">新增</lay-button>
<lay-button type="default">删除</lay-button>
<lay-button type="default">修改</lay-button>
</lay-button-container>
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
return {
}
}
}
</script>
:::
2021-10-25 17:13:23 +00:00
::: title 加载按钮
2021-10-19 14:28:44 +00:00
:::
2022-02-01 15:26:28 +00:00
::: demo 使用 `loading` 属性, 控制按钮的加载状态
<template>
<lay-button-container>
2022-03-20 06:54:36 +00:00
<lay-button type="default" :loading="loadState">加载</lay-button>
<lay-switch v-model="loadState"></lay-switch>
</lay-button-container>
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
2022-03-20 06:54:36 +00:00
const loadState = ref(true)
return {
2022-03-20 06:54:36 +00:00
loadState
}
}
}
</script>
:::
::: title 事件处理
:::
2021-12-25 14:10:03 +00:00
::: demo 使用 `@click` 设置单击回调
<template>
<lay-button type="default" @click="clickHandle">单击事件</lay-button>
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
2022-03-15 17:00:37 +00:00
const clickHandle = () => {
console.log('点击事件')
}
return {
clickHandle
}
}
}
</script>
:::
2021-12-25 14:10:03 +00:00
::: title Button 属性
2021-10-19 14:28:44 +00:00
:::
2021-11-07 07:55:08 +00:00
::: table
2021-12-25 14:10:03 +00:00
| 属性 | 描述 | 类型 | 默认值 | 可选值 |
| ----------- | -------- | ------- | --------- | ---------------------------------- |
2021-12-25 14:10:03 +00:00
| type | 主题 | string | `primary` | `primary` `normal` `warm` `danger` |
| size | 尺寸 | string | -- | `lg` `sm` `xs` |
| fluid | 最大化 | boolean | `false` | `true` `false` |
| radius | 圆角 | boolean | `false` | `true` `false` |
| border | 边框 | string | `green` | `green` `blue` `orange` `red` |
| disabled | 禁用 | boolean | `false` | `true` `false` |
| loading | 加载 | boolean | `false` | `true` `false` |
| native-type | 原生类型 | string | `button` | `button` `submit` `reset` |
| prefix-icon | 前置图标 | string | -- | 内置 icon 集 |
| suffix-icon | 后置图标 | string | -- | 内置 icon 集 |
2021-11-07 07:55:08 +00:00
:::
2021-12-25 14:10:03 +00:00
::: title Button 插槽
:::
::: table
| 名称 | 描述 | 参数 |
| ------- | -------- | ---- |
| default | 默认内容 | -- |
2021-12-25 14:10:03 +00:00
:::
::: title Button Group 属性
:::
::: table
| 属性 | 描述 | 类型 | 默认值 | 可选值 |
| ---- | ---- | ---- | ------ | ------ |
| - | - | - | - |
2021-12-25 14:10:03 +00:00
:::
::: title Button Group 插槽
:::
2021-11-07 07:55:08 +00:00
::: table
| 事件 | 描述 | 参数 |
| ------- | -------- | ---- |
| default | 默认内容 | -- |
2021-11-07 07:55:08 +00:00
:::
2021-12-15 16:00:45 +00:00
2022-03-29 23:44:37 +00:00
2022-01-12 06:19:06 +00:00
::: previousNext button
:::