更新、想法和资源
什么是 Headless UI?为什么建议将其与 daisyUI 一起使用?
Headless UI 是一组完全无样式、完全可访问的 React 和 Vue UI 组件。它为您提供功能,而无需设计决策。daisyUI 是一个 Tailwind CSS 组件库,它提供设计决策,而无需功能。这就是为什么建议将它们一起使用。
作为一个纯 CSS 组件库,daisyUI 不包含任何 JavaScript 代码。但是,有时您需要 JS 来制作交互式组件或改进键盘导航。这就是Headless UI的用武之地。它为您提供完全可访问的 React 和 Vue UI 组件。
Headless UI可用于 React 和 Vue。但也有一个非官方的 Headless UI for Svelte 移植版本。
npm install @headlessui/vue
如果您使用 React,则运行此命令
npm install @headlessui/react
例如,根据 Headless UI 文档,这是创建下拉菜单的方法
import { Menu } from "@headlessui/react"
export default function MyDropDown() {
return (
<Menu>
<Menu.Button>Button</Menu.Button>
<Menu.Items>
<Menu.Item>
<li>
<a href="/link">Item 1</a>
</li>
</Menu.Item>
<Menu.Item>
<li>
<a href="/link">Item 2</a>
</li>
</Menu.Item>
</Menu.Items>
</Menu>
)
}
在安装 daisyUI 之后,您可以在 Headless UI 组件中使用 daisyUI 的样式。 只需在需要的地方添加 daisyUI 类名(和 Tailwind CSS 实用程序类)
import { Menu } from "@headlessui/react"
export default function MyDropDown() {
return (
<Menu>
<Menu.Button className="btn">Button</Menu.Button>
<Menu.Items className="menu rounded-box bg-base-200 w-52">
<Menu.Item>
<li>
<a href="/link">Item 1</a>
</li>
</Menu.Item>
<Menu.Item>
<li>
<a href="/link">Item 2</a>
</li>
</Menu.Item>
</Menu.Items>
</Menu>
)
}
访问Headless UI 文档以了解有关其组件的更多信息。
订阅 daisyUI 博客新闻通讯,以获取有关新文章的更新。
您只会在新博客文章发布时收到一封电子邮件。没有垃圾邮件。没有广告。