惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
GRAHAM CLULEY
V
V2EX
WordPress大学
WordPress大学
博客园 - Franky
Last Week in AI
Last Week in AI
博客园 - 司徒正美
有赞技术团队
有赞技术团队
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - 【当耐特】
V
Visual Studio Blog
C
CERT Recently Published Vulnerability Notes
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Jina AI
Jina AI
Attack and Defense Labs
Attack and Defense Labs
腾讯CDC
The Hacker News
The Hacker News
Hugging Face - Blog
Hugging Face - Blog
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
J
Java Code Geeks
人人都是产品经理
人人都是产品经理
阮一峰的网络日志
阮一峰的网络日志
T
Tailwind CSS Blog
S
SegmentFault 最新的问题
大猫的无限游戏
大猫的无限游戏
小众软件
小众软件
A
Arctic Wolf
量子位
博客园 - 聂微东
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
N
News and Events Feed by Topic
雷峰网
雷峰网
博客园_首页
Google Online Security Blog
Google Online Security Blog
Spread Privacy
Spread Privacy
罗磊的独立博客
H
Hacker News: Front Page
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
月光博客
月光博客
TaoSecurity Blog
TaoSecurity Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
博客园 - 三生石上(FineUI控件)
宝玉的分享
宝玉的分享
IT之家
IT之家
The Cloudflare Blog
爱范儿
爱范儿
博客园 - 叶小钗
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Apple Machine Learning Research
Apple Machine Learning Research
酷 壳 – CoolShell
酷 壳 – CoolShell

博客园 - 丁少华

Neon白嫖免费pgsql 域名利用cloudflare免费图床 nginx反代CloudflarePages提示502 vite使用biome Window下Nginx winserver2022安装不上软件 mac已损坏无法打开 代码高亮 命令运行器之task 命令运行器之just windows开启wsl 白嫖Redis 白嫖MongoDB vercel无服务函数 无服务器函数完全指南 在线 mock 方案 解释型语言和编译型语言 何时该使用monorepo monorepo前端专属吗 Cursor锁区问题 CentOS9上Let’s Encrypt自动续签 Windows给文件夹别名 ai 常识 nestjs逆向工程Prisma与DTO nestjs的orm之Prisma
vite使用shadcn
丁少华 · 2026-05-02 · via 博客园 - 丁少华

参考这里 https://www.shadcn-ui.cn/docs/installation/vite

前置

需要项目提前集成好 taiwindcss,另外还需要配置好短路径,注意 tsconfig.json 和 tsconfig.app.json都要

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

初始化

进入项目使用pnpm dlx shadcn@latest init,无特殊要求外均选择默认即可

? Select a component library › - Use arrow-keys. Return to submit.
❯   Radix
    Base

? Which preset would you like to use? › - Use arrow-keys. Return to submit.
❯   Nova - Lucide / Geist
    Vega
    Maia
    Lyra
    Mira
    Luma
    Sera
    Custom

优化

初始化项目后,会在生成 components/ui 用于存放你安装的shadcn组件,以及 components.json这个是shadcn的配置,还有一个src/lib/utils.ts 辅助工具。

但是,我对这个辅助工具不太满意,它迫使我项目多了些文件和文件夹

  • 我将生成的代码复制到utils/shadcn/utils.ts
  • 改变components.json
  • 重新安装组件即可
"aliases": {
   "utils": "@/utils/shadcn/utils",
   "lib": "@/utils/shadcn",
}

从此 utils/shadcn 就是shadcn 执行的时候自动生成的辅助工具的home目录了,我不关心它.

utils 不指定或指定的不叫 utils,也都会被指定为 utils.tsx,这揭示了 shadcn CLI 的一个“霸王条款”:无论你怎么命名你的文件,它的代码生成模板里那句 import { cn } from "..." 后面跟着的永远是 /utils。