SPT术语库

shadcn/ui

项目需要一个可访问、可改造的对话框或按钮时,团队希望把组件结构纳入自己的代码,而不是只调用黑盒包。

技术栈与工具约 10 分钟 · 从真实需求理解

1shadcn/ui 怎样把组件带进项目?

SHADCN/UI · COPY SOURCE从 registry 到项目 UI

不只调用组件,而是把可读源码带回项目。

REGISTRYCOMPONENT SOURCE
Dialog

可加入项目的组件条目

添加到项目
SOURCEPROJECT FILE
components/ui/dialog.tsx
01export function Dialog({
02 children, ...props
03}) { return (…); }

源码进入项目边界,可以按产品规则继续修改。

UIPROJECT OWNED
删除草稿?

项目代码拥有 · 可继续定制

取消确认删除

shadcn/ui 提供的是一套把组件源码加入项目的工作方式。选中组件后,源码会落到项目自己的目录,团队可以阅读、组合和修改它,而不是只能调用一个封装好的黑盒。

  • registry 条目说明可以加入项目的组件和依赖边界。
  • components/ui/dialog.tsx 之类的文件成为项目自己的组件源码入口。
  • 最终 UI 由项目代码渲染,后续的样式、结构和业务约束也要由项目负责验收。

2shadcn/ui 不是远程黑盒组件包

传统组件包通常由依赖提供组件实现,使用方通过 API 调用;shadcn/ui 更强调把组件源码放进你的项目,由项目直接拥有这部分结构和样式。

  • Tailwind CSS 负责 utility 样式组合,shadcn/ui 负责把一套组件源码带进项目;两者可以一起使用,但不是同一个概念。
  • 源码进入项目不代表自动完成可访问性、业务状态或视觉验收,Agent 仍要检查真实 DOM 和交互。

判断 shadcn/ui 是否用对,可以看组件代码是否真的存在于项目边界、是否能按产品规则修改,以及最终界面是否保留正确的语义和行为。

3一个 shadcn/ui 组件由哪些部分组成?

REGISTRYDialog组件来源条目
SOURCEdialog.tsx项目内可修改源码
UI删除草稿?项目代码渲染

组件来源、项目源码和最终 UI 要连在一起,所有权才是可验证的。

拆开 Dialog 示例,可以看到 shadcn/ui 从组件来源到项目 UI 最重要的三个真实区域。

  • REGISTRY 是可加入项目的组件来源条目,说明组件名称和入口。
  • SOURCE 是项目目录里的组件源码,团队可以在自己的边界内继续修改。
  • UI 是源码被真实使用后的 Dialog,仍要检查语义、焦点、关闭方式和窄屏表现。

4怎样把 shadcn/ui 需求交给 Agent?

请用 shadcn/ui 制作一个 Dialog 示例:展示组件来源、写入项目的 components/ui/dialog.tsx 和项目实际渲染结果;明确源码归项目拥有并可继续修改,不要只放一个黑盒组件截图,并验收 390px 和 320px 下文件路径与对话框不溢出。

5不用背,看看你能不能判断

1 / 3

shadcn/ui 的核心工作方式是什么?

请选择一个最符合题意的答案

选择答案后自动进入下一题

社区延伸

看别人真实遇到过什么

社区帖子还没有关联到这个词条。