Components
@shadcn/react
Utilities
注意: 本指南针对 Remix。React Router 的相关内容,请参阅 React Router 指南。
创建项目#
首先使用 create-remix 创建一个新的 Remix 项目:
pnpm create remix@latest my-app
运行 CLI#
运行 shadcn init 命令来设置你的项目:
pnpm dlx shadcn@latest init
配置 components.json#
系统将询问你一些问题来配置 components.json:
Which color would you like to use as base color? › Neutral应用结构#
注意:此应用结构仅作为建议。你可以将文件放置在任何你想放的位置。
- 将 UI 组件放置在
app/components/ui文件夹中。 - 你自己的组件可以放在
app/components文件夹内。 app/lib文件夹包含所有的工具函数。我们在utils.ts中定义了cn辅助函数。app/tailwind.css文件包含全局 CSS。
安装 Tailwind CSS#
将 tailwindcss 和 autoprefixer 作为开发依赖安装:
pnpm add -D tailwindcss@latest autoprefixer@latest
然后创建 postcss.config.js 文件:
export default {
plugins: {
tailwindcss: {},
autoprefixer: {},
},
}最后,在 remix.config.js 文件中添加以下内容:
/** @type {import('@remix-run/dev').AppConfig} */
export default {
...
tailwind: true,
postcss: true,
...
};将 tailwind.css 添加到你的应用#
在你的 app/root.tsx 文件中,导入 tailwind.css 文件:
import styles from "./tailwind.css?url"
export const links: LinksFunction = () => [
{ rel: "stylesheet", href: styles },
...(cssBundleHref ? [{ rel: "stylesheet", href: cssBundleHref }] : []),
]就这些了#
现在你可以开始往你的项目中添加组件了。
pnpm dlx shadcn@latest add button
上面的命令会将 Button 组件添加到你的项目。然后你可以这样导入它:
import { Button } from "~/components/ui/button"
export default function Home() {
return (
<div>
<Button>点击我</Button>
</div>
)
}