106k
New

Vite

为 Vite 安装和配置 shadcn/ui。

创建项目

首先使用 vite 创建一个新的 React 项目。选择 React + TypeScript 模板:

pnpm create vite@latest

添加 Tailwind CSS

pnpm add tailwindcss @tailwindcss/vite

src/index.css 中的所有内容替换为以下内容:

src/index.css
@import "tailwindcss";

编辑 tsconfig.json 文件

当前版本的 Vite 将 TypeScript 配置拆分成三个文件,其中两个需要编辑。 在 tsconfig.jsontsconfig.app.json 文件的 compilerOptions 部分添加 baseUrlpaths 属性:

tsconfig.json
{
  "files": [],
  "references": [
    {
      "path": "./tsconfig.app.json"
    },
    {
      "path": "./tsconfig.node.json"
    }
  ],
  "compilerOptions": {
    "baseUrl": ".",
    "paths": {
      "@/*": ["./src/*"]
    }
  }
}

编辑 tsconfig.app.json 文件

tsconfig.app.json 文件中添加以下代码,用于你的 IDE 解析路径:

tsconfig.app.json
{
  "compilerOptions": {
    // ...
    "baseUrl": ".",
    "paths": {
      "@/*": [
        "./src/*"
      ]
    }
    // ...
  }
}

更新 vite.config.ts

向 vite.config.ts 中添加以下代码,使你的应用能正确解析路径:

pnpm add -D @types/node
vite.config.ts
import path from "path"
import tailwindcss from "@tailwindcss/vite"
import react from "@vitejs/plugin-react"
import { defineConfig } from "vite"
 
// https://vite.dev/config/
export default defineConfig({
  plugins: [react(), tailwindcss()],
  resolve: {
    alias: {
      "@": path.resolve(__dirname, "./src"),
    },
  },
})

运行 CLI

运行 shadcn 初始化命令来设置你的项目:

pnpm dlx shadcn@latest init

你将被问到一些问题以配置 components.json

Which color would you like to use as base color? › Neutral

添加组件

现在你可以开始向项目中添加组件了。

pnpm dlx shadcn@latest add button

上述命令会将 Button 组件添加到你的项目中。然后你可以这样导入它:

src/App.tsx
import { Button } from "@/components/ui/button"
 
function App() {
  return (
    <div className="flex min-h-svh flex-col items-center justify-center">
      <Button>点击我</Button>
    </div>
  )
}
 
export default App