<script lang='ts' setup>
import { Kbd, KbdGroup } from '@/components/ui/kbd'
</script>
<template>
<div class="flex flex-col items-center gap-4">
<KbdGroup>
<Kbd>⌘</Kbd>
<Kbd>⇧</Kbd>
<Kbd>⌥</Kbd>
<Kbd>⌃</Kbd>
</KbdGroup>
<KbdGroup>
<Kbd>Ctrl</Kbd>
<span>+</span>
<Kbd>B</Kbd>
</KbdGroup>
</div>
</template>安装
🌐 Installation
pnpm dlx shadcn-vue@latest add kbd
用法
🌐 Usage
<script setup lang="ts">
import { Kbd } from '@/components/ui/kbd'
</script>
<template>
<Kbd>Ctrl</Kbd>
</template>示例
🌐 Examples
群组
🌐 Group
使用 KbdGroup 组件将键盘按键分组。
🌐 Use the KbdGroup component to group keyboard keys together.
Use Ctrl + BCtrl + K to open the command palette
<script setup lang="ts">
import { Kbd, KbdGroup } from '@/components/ui/kbd'
</script>
<template>
<div class="flex flex-col items-center gap-4">
<p class="text-muted-foreground text-sm">
Use
<KbdGroup>
<Kbd>Ctrl + B</Kbd>
<Kbd>Ctrl + K</Kbd>
</KbdGroup>
to open the command palette
</p>
</div>
</template>按钮
🌐 Button
在 Button 组件内使用 Kbd 组件,在按钮内显示一个键盘按键。
🌐 Use the Kbd component inside a Button component to display a keyboard key inside a button.
<script setup lang="ts">
import { Button } from '@/components/ui/button'
import { Kbd } from '@/components/ui/kbd'
</script>
<template>
<div class="flex flex-wrap items-center gap-4">
<Button variant="outline" size="sm" class="pr-2">
Accept <Kbd>⏎</Kbd>
</Button>
<Button variant="outline" size="sm" class="pr-2">
Cancel <Kbd>Esc</Kbd>
</Button>
</div>
</template>工具提示
🌐 Tooltip
你可以在 Tooltip 组件内使用 Kbd 组件来显示带有键盘按键的工具提示。
🌐 You can use the Kbd component inside a Tooltip component to display a tooltip with a keyboard key.
<script setup lang="ts">
import { Button } from '@/components/ui/button'
import { ButtonGroup } from '@/components/ui/button-group'
import { Kbd, KbdGroup } from '@/components/ui/kbd'
import {
Tooltip,
TooltipContent,
TooltipProvider,
TooltipTrigger,
} from '@/components/ui/tooltip'
</script>
<template>
<div class="flex flex-wrap gap-4">
<ButtonGroup>
<TooltipProvider>
<Tooltip>
<TooltipTrigger as-child>
<Button size="sm" variant="outline">
Save
</Button>
</TooltipTrigger>
<TooltipContent>
<div class="flex items-center gap-2">
Save Changes <Kbd>S</Kbd>
</div>
</TooltipContent>
</Tooltip>
</TooltipProvider>
<TooltipProvider>
<Tooltip>
<TooltipTrigger as-child>
<Button size="sm" variant="outline">
Print
</Button>
</TooltipTrigger>
<TooltipContent>
<div class="flex items-center gap-2">
Print Document
<KbdGroup>
<Kbd>Ctrl</Kbd>
<Kbd>P</Kbd>
</KbdGroup>
</div>
</TooltipContent>
</Tooltip>
</TooltipProvider>
</ButtonGroup>
</div>
</template>输入组
🌐 Input Group
你可以在 InputGroupAddon 组件内使用 Kbd 组件来在输入组中显示一个键盘键。
🌐 You can use the Kbd component inside a InputGroupAddon component to display a keyboard key inside an input group.
<script setup lang="ts">
import { SearchIcon } from 'lucide-vue-next'
import {
InputGroup,
InputGroupAddon,
InputGroupInput,
} from '@/components/ui/input-group'
import { Kbd } from '@/components/ui/kbd'
</script>
<template>
<div class="flex w-full max-w-xs flex-col gap-6">
<InputGroup>
<InputGroupInput placeholder="Search..." />
<InputGroupAddon>
<SearchIcon />
</InputGroupAddon>
<InputGroupAddon align="inline-end">
<Kbd>⌘</Kbd>
<Kbd>K</Kbd>
</InputGroupAddon>
</InputGroup>
</div>
</template>API参考
🌐 API Reference
键盘
🌐 Kbd
使用 Kbd 组件显示一个键盘按键。
🌐 Use the Kbd component to display a keyboard key.
| 属性 | 类型 | 默认值 |
|---|---|---|
class | string | `` |
<Kbd>
Ctrl
</Kbd>KbdGroup
使用 KbdGroup 组件将 Kbd 组件组合在一起。
🌐 Use the KbdGroup component to group Kbd components together.
| 属性 | 类型 | 默认值 |
|---|---|---|
class | string | `` |
<KbdGroup>
<Kbd>Ctrl</Kbd>
<Kbd>B</Kbd>
</KbdGroup>