Docs
按钮
按钮
显示按钮或看起来像按钮的组件。
安装
¥Installation
pnpm dlx shadcn@latest add button
用法
¥Usage
import { Button } from "@/components/ui/button"
<Button variant="outline">Button</Button>
链接
¥Link
你可以使用 buttonVariants
助手创建一个看起来像按钮的链接。
¥You can use the buttonVariants
helper to create a link that looks like a button.
import { buttonVariants } from "@/components/ui/button"
<Link className={buttonVariants({ variant: "outline" })}>Click here</Link>
或者,你可以设置 asChild
参数并嵌套链接组件。
¥Alternatively, you can set the asChild
parameter and nest the link component.
<Button asChild>
<Link href="/login">Login</Link>
</Button>
示例
¥Examples
主要
¥Primary
辅助
¥Secondary
破坏性
¥Destructive
大纲
¥Outline
Ghost
链接
¥Link
图标
¥Icon
带有图标
¥With Icon
加载
¥Loading
作为子级
¥As Child
更新日志
¥Changelog
2024-10-16 图标类
¥2024-10-16 Classes for icons
在按钮中添加了 gap-2 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0
,以自动设置按钮内的图标样式。
¥Added gap-2 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0
to the button to automatically style icon inside the button.
将以下类添加到你的 button.tsx
文件中的 cva
调用。
¥Add the following classes to the cva
call in your button.tsx
file.
button.tsx
const buttonVariants = cva(
"inline-flex ... gap-2 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0"
)