Docs
Remix

Remix

安装和配置 shadcn/ui 在 Remix 中

创建项目

首先使用 create-remix 创建一个新的 Remix 项目:

pnpm create remix@latest my-app

运行 CLI

运行 shadcn-ui 初始化命令以设置您的项目:

pnpm dlx shadcn@latest init

配置 components.json

您将被询问几个问题以配置 components.json

您想使用哪种样式? › New York
您想使用什么颜色作为基础颜色? › Zinc
您想使用 CSS 变量来定义颜色吗? › no / yes

应用结构

  • 将 UI 组件放在 app/components/ui 文件夹中。
  • 您自己的组件可以放在 app/components 文件夹中。
  • app/lib 文件夹包含所有实用函数。我们有一个 utils.ts 文件,在其中定义 cn 助手函数。
  • app/tailwind.css 文件包含全局 CSS。

安装 Tailwind CSS

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>
  )
}