使用 Vite + React 19 集成 Tailwind CSS 与 shadcn/ui 组件库完整指南

使用 Vite + React 19 集成 Tailwind CSS 与 shadcn/ui 组件库完整指南

    • [🌟 前言](#🌟 前言)
    • [一、创建 React 19 项目](#一、创建 React 19 项目)
    • [二、集成 Tailwind CSS](#二、集成 Tailwind CSS)
      • [1️⃣ 安装依赖](#1️⃣ 安装依赖)
      • [2️⃣ 配置 Vite 插件](#2️⃣ 配置 Vite 插件)
      • [3️⃣ 引入 Tailwind](#3️⃣ 引入 Tailwind)
      • [4️⃣ 启动项目](#4️⃣ 启动项目)
    • 三、配置路径别名
      • [1️⃣ 修改 TypeScript 配置](#1️⃣ 修改 TypeScript 配置)
      • [2️⃣ 安装类型声明](#2️⃣ 安装类型声明)
      • [3️⃣ 配置 Vite 别名解析](#3️⃣ 配置 Vite 别名解析)
    • [四、集成 shadcn/ui 组件库](#四、集成 shadcn/ui 组件库)
      • [1️⃣ 初始化配置](#1️⃣ 初始化配置)
      • [2️⃣ 添加示例组件](#2️⃣ 添加示例组件)
    • 五、项目结构预览
    • [💡 常见问题](#💡 常见问题)
    • [🚀 最佳实践](#🚀 最佳实践)
    • 参考文档

🌟 前言

随着 React 19 的发布,开发者对高效开发工具链的需求日益增加。本文将手把手教你如何通过 Vite 快速搭建 React 19 项目,并整合 Tailwind CSSshadcn/ui 组件库,最后配置路径别名优化开发体验。


一、创建 React 19 项目

使用 pnpm 快速初始化项目:

bash 复制代码
pnpm create vite --template=react-ts

按提示输入项目名称后进入项目目录。


二、集成 Tailwind CSS

1️⃣ 安装依赖

bash 复制代码
npm install tailwindcss @tailwindcss/vite

2️⃣ 配置 Vite 插件

修改 vite.config.ts

typescript 复制代码
import { defineConfig } from 'vite'
import tailwindcss from '@tailwindcss/vite'

export default defineConfig({
  plugins: [tailwindcss()],
})

3️⃣ 引入 Tailwind

修改 index.css, 顶部添加:

css 复制代码
@import "tailwindcss";

4️⃣ 启动项目

bash 复制代码
npm run dev

三、配置路径别名

1️⃣ 修改 TypeScript 配置

tsconfig.json

json 复制代码
{
  "compilerOptions": {
    "baseUrl": ".",
    "paths": {
      "@/*": ["./src/*"]
    }
  }
}

tsconfig.app.json

json 复制代码
{
  "compilerOptions": {
    "baseUrl": ".",
    "paths": {
      "@/*": ["./src/*"]
    }
  }
}

2️⃣ 安装类型声明

bash 复制代码
pnpm add -D @types/node

3️⃣ 配置 Vite 别名解析

更新 vite.config.ts

typescript 复制代码
import path from "path"
import { defineConfig } from "vite"

export default defineConfig({
  resolve: {
    alias: {
      "@": path.resolve(__dirname, "./src"),
    },
  },
})

四、集成 shadcn/ui 组件库

1️⃣ 初始化配置

bash 复制代码
pnpm dlx shadcn@canary init

根据提示选择:

  • 使用 Tailwind CSS
  • 配置组件目录
  • 启用 dark mode

2️⃣ 添加示例组件

bash 复制代码
pnpm dlx shadcn@canary add sidebar-08

五、项目结构预览

复制代码
my-project/
├── src/
│   ├── components/  # shadcn 组件
│   ├── App.tsx
│   └── style.css
├── vite.config.ts
├── tailwind.config.js
└── tsconfig.json

💡 常见问题

  1. React 19 兼容性 :目前需使用 @canary 版本
  2. 样式不生效:检查 CSS 导入顺序
  3. 路径别名失效:重启 IDE 并验证配置

🚀 最佳实践

  • 使用 @/components 导入自定义组件
  • 定期更新 shadcn 组件库

参考文档

相关推荐
开发者小天21 小时前
react中useEffect的用法,以及订阅模式的原理
前端·react.js·前端框架
奶球不是球1 天前
elementplus组件中el-calendar组件自定义日期单元格内容及样式
javascript·css·css3
我这一生如履薄冰~1 天前
css属性pointer-events: none
前端·css
coderHing[专注前端]1 天前
告别 try/catch 地狱:用三元组重新定义 JavaScript 错误处理
开发语言·前端·javascript·react.js·前端框架·ecmascript
代码小学僧1 天前
从 Arco Table 迁移到 VTable:VTable使用经验分享
前端·react.js·开源
San301 天前
深度驱动:React Hooks 核心之 `useState` 与 `useEffect` 实战详解
javascript·react.js·响应式编程
白哥学前端1 天前
Vite Proxy到底是咋个工作嘞?
axios·vite
@大迁世界1 天前
面了 100+ 次前端后,我被一个 React 问题当场“打回原形”
前端·javascript·react.js·前端框架·ecmascript
苏打水com1 天前
第十九篇:Day55-57 前端工程化进阶——从“手动低效”到“工程化高效”(对标职场“规模化”需求)
前端·css·vue·html
骑驴看星星a1 天前
【回顾React的一些小细节】render里不可包含的东西
前端·javascript·react.js