组件
悬浮按钮 Float Button
FloatButton:浮动按钮。组内的展开状态从挂载点共享给各个部件。
#基础用法
Nothing chosen yet.
<script setup lang="ts">
import { pen_line, plus, trash_2 } from "@bysages/icons";
import { FloatButton, Icon } from "@bysages/vue";
import { ref } from "vue";
const status = ref("Nothing chosen yet.");
</script>
<template>
<div>
<FloatButton>
<FloatButton.Trigger label="Actions">
<Icon :glyph="plus" />
</FloatButton.Trigger>
<FloatButton.Item label="Compose" @click="status = 'Compose'">
<Icon :glyph="pen_line" />
</FloatButton.Item>
<FloatButton.Item label="Delete" @click="status = 'Delete'">
<Icon :glyph="trash_2" />
</FloatButton.Item>
</FloatButton>
<p role="status" class="mt-4 text-sm text-tertiary">
{{ status }}
</p>
</div>
</template>
Nothing chosen yet.
<script setup lang="ts">
import { pen_line, plus } from "@bysages/icons";
import { Button, FloatButton, Icon } from "@bysages/vue";
import { ref } from "vue";
const open = ref(false);
const status = ref("Nothing chosen yet.");
const compose = () => {
status.value = "Compose";
open.value = false;
};
</script>
<template>
<div>
<Button variant="outline" @click="open = !open">
{{ open ? "Fold the group" : "Unfold the group" }}
</Button>
<p role="status" class="my-4 text-sm text-tertiary">
{{ status }}
</p>
<FloatButton v-model:open="open" placement="bottom-start">
<FloatButton.Trigger label="Actions">
<Icon :glyph="plus" />
</FloatButton.Trigger>
<FloatButton.Item label="Compose" @click="compose">
<Icon :glyph="pen_line" />
</FloatButton.Item>
</FloatButton>
</div>
</template>
#属性
#FloatButtonRoot
悬浮动作组件同时覆盖 FAB 和 speed dial:Root 把组固定在页面角落并管理展开状态(受控时镜像 open),Trigger 切换展开,每个 Item 是圆形动作按钮,展开时名称显示在旁边。按钮复用共享样式,这里容器为圆形;组件只负责悬浮定位、展开和收起。
| 属性 | 类型 | 默认值 | 描述 |
|---|---|---|---|
open | Boolean | undefined | 组的受控展开状态;未设置时由组自行维护,设置后触发器通过 update:open 回调同步 |
placement | String as PropType<FloatButtonPlacement> | "bottom-end" | 组停靠的角落 |
size | String as PropType<FloatButtonSize> | "lg" | 整组按钮使用的尺寸档位 |
#FloatButtonTrigger
| 属性 | 类型 | 默认值 | 描述 |
|---|---|---|---|
label | String | undefined | 无障碍名称;控件只显示图标 |
#FloatButtonItem
| 属性 | 类型 | 默认值 | 描述 |
|---|---|---|---|
label | String | 操作名称;作为按钮的无障碍名称,组展开时也显示在按钮旁 | |
disabled | Boolean | false | — |