Aipedia
登录

组件库

由 AI 核验 · 1 天前
组件库
中文名
组件库
英文名
Component Library
别称
UI 组件库、控件库
核心思想
一次定义、多处复用
典型载体
前端框架包、设计工具库、低代码平台
常见形态
代码包(npm 等)、设计资源、平台内置容器
相关概念
设计系统、组件化开发、设计令牌

组件库是组件定义的容器,应用制作者可以把同一套控件定义在多个应用中重复使用,从而免去反复制作相同类型控件的重复劳动。11Work with component libraries - Traininglearn.microsoft.com前往参考资料 ↓在新标签页中打开

在前端开发中,组件库通常以框架包的形式分发,例如基于 Vue 3 的移动端组件库会提供数十个覆盖主流场景的高质量组件,并支持按需引入与自定义主题。22Varlet UI-Material Design风格Vue 3框架移动端组件库developer.cloud.tencent.cn前往参考资料 ↓在新标签页中打开|33sw-uni-materielnpmjs.com前往参考资料 ↓在新标签页中打开

组件库的工程实现通常包含组件源码、示例代码、文档、打包结果、测试代码与构建配置等部分,需要合理的目录结构来组织。44组件库目录结构相关专利说明书patentimages.storage.googleapis.com前往参考资料 ↓在新标签页中打开

组件库可以面向特定运行环境做适配,例如基于 uni-app 的全端组件库、基于 Web Components 的跨框架组件库,以及基于已有组件库(如 Element Plus)二次开发的组件库。33sw-uni-materielnpmjs.com前往参考资料 ↓在新标签页中打开|55ivy-design-wc:使用 vue 框架开发的 Web Components 组件库github.com前往参考资料 ↓在新标签页中打开|66gvs-componentnpmjs.com前往参考资料 ↓在新标签页中打开

定义与核心思想

组件定义的容器

在组件库的工程实践中,“组件定义的容器”指承载单个组件元信息(名称、属性、事件、插槽、样式变量、版本、依赖等)的结构化描述单元;它把组件的对外契约从实现代码中剥离出来,使文档、类型声明、设计资产与运行时注册能够共享同一份定义。77Web Componentsdeveloper.mozilla.org前往参考资料 ↓在新标签页中打开|88Custom elementshtml.spec.whatwg.org前往参考资料 ↓在新标签页中打开

Web Components 标准中的自定义元素注册表(CustomElementRegistry)是浏览器层面最典型的组件定义容器:通过 customElements.define() 把标签名与类定义绑定,浏览器据此在解析到对应标签时实例化组件,并可在升级(upgrade)时复用同一份定义。99CustomElementRegistrydeveloper.mozilla.org前往参考资料 ↓在新标签页中打开

在基于 JavaScript 的组件框架中,组件定义通常表现为一个可导出的模块对象或函数:Vue 的单文件组件编译后导出包含 render、setup 等字段的组件选项对象,React 则以函数或类作为组件类型本身,二者都由框架运行时按该定义创建组件实例。1010Components Basicsvuejs.org前往参考资料 ↓在新标签页中打开

组件定义的容器往往同时承担“契约声明”与“实现入口”两种角色:契约部分(props、events、slots)可被工具静态提取,用于生成 API 文档、类型定义和设计侧属性面板;实现部分则保留在运行时,供框架实例化。77Web Componentsdeveloper.mozilla.org前往参考资料 ↓在新标签页中打开|1111Component Story Format (CSF)storybook.js.org前往参考资料 ↓在新标签页中打开

Storybook 的 Component Story Format(CSF)把每个组件的示例与元数据写成可被静态分析的 ES 模块默认导出,这种“以模块为容器”的做法使组件定义可以脱离具体文档站点被工具链消费,用于生成文档、测试和设计稿对照。1111Component Story Format (CSF)storybook.js.org前往参考资料 ↓在新标签页中打开

Web Components 的社区实践进一步把组件定义容器扩展为“自定义元素清单”(custom-elements.json),以 JSON 描述自定义元素的标签名、属性、事件、CSS 自定义属性与插槽,供 IDE、文档生成器和设计工具统一读取。1212Custom Elements Manifestgithub.com前往参考资料 ↓在新标签页中打开

组件定义的容器与组件实例是不同层次的概念:容器描述“组件是什么”,实例是“组件被使用时的具体对象”;同一份定义可以在一次运行中被多次实例化,实例之间共享定义但各自持有独立状态。99CustomElementRegistrydeveloper.mozilla.org前往参考资料 ↓在新标签页中打开|1010Components Basicsvuejs.org前往参考资料 ↓在新标签页中打开

把组件定义收敛到单一容器,有助于减少文档、类型声明与实现三者之间的漂移;反之,若定义分散在代码、文档与设计文件中,任何一处修改都可能造成对外契约不一致。77Web Componentsdeveloper.mozilla.org前往参考资料 ↓在新标签页中打开|1111Component Story Format (CSF)storybook.js.org前往参考资料 ↓在新标签页中打开

组件定义容器的粒度选择存在权衡:过粗(整个库一个清单)会削弱按需加载与独立版本管理,过细(每个组件一份独立描述且互不引用)则难以表达组合关系与共享依赖;常见做法是以单个组件为基本单元、以库级清单做聚合索引。1212Custom Elements Manifestgithub.com前往参考资料 ↓在新标签页中打开|77Web Componentsdeveloper.mozilla.org前往参考资料 ↓在新标签页中打开

一次定义、多处复用

组件库的核心思想是「一次定义、多处复用」:把界面或功能单元抽象为可独立维护的组件,定义一次后在不同页面、不同业务流程乃至不同项目中反复调用,从而避免同一交互逻辑被反复重写。1313CN118897675A - 组件库构建及调用方法、装置、设备及存储介质 - Google Patentspatents.google.com前往参考资料 ↓在新标签页中打开

复用并不止于单个基础组件的重复调用。按公开专利文献的描述,基础组件(如输入框、日期选择框、提交按钮、提示框)可以通过组合与定制生成复合型组件,例如一个承载完整表单提交流程的复合组件,开发者据此快速搭建符合特定业务需求的流程,而无需从头编写代码。1313CN118897675A - 组件库构建及调用方法、装置、设备及存储介质 - Google Patentspatents.google.com前往参考资料 ↓在新标签页中打开

「一次定义」的粒度是可分层的:底层是原子化的基础组件,上层是由基础组件拼装出的复合组件,复用因此可以发生在两个层级上——既复用单个控件,也复用一整段已经编排好的交互流程。1313CN118897675A - 组件库构建及调用方法、装置、设备及存储介质 - Google Patentspatents.google.com前往参考资料 ↓在新标签页中打开

组件库的构建与调用被作为一项技术方案提出,说明「定义一次、多处调用」在实践中需要配套的构建方法与调用机制,而不仅是若干源文件的集合;组件库的价值实现依赖于定义侧与调用侧两端的配合。1313CN118897675A - 组件库构建及调用方法、装置、设备及存储介质 - Google Patentspatents.google.com前往参考资料 ↓在新标签页中打开

复用的直接收益体现在开发工作量上:当表单、列表、弹窗等高频界面模式已被封装为组件,新页面主要是对既有组件的选取与组合,而非从零编码,这也是组件库被引入工程实践的主要动因之一。1313CN118897675A - 组件库构建及调用方法、装置、设备及存储介质 - Google Patentspatents.google.com前往参考资料 ↓在新标签页中打开

为什么需要组件库

重复制作的成本

在没有组件库的情况下,应用制作者往往会反复制作同一类控件:例如组织希望所有应用都带有包含菜单控件和一组导航按钮的页眉,菜单项和跳转页面因应用而异,但创建菜单与按钮的流程完全相同,这部分工作被重复执行。11Work with component libraries - Traininglearn.microsoft.com前往参考资料 ↓在新标签页中打开

组件库的核心作用是把这类重复制作收敛为一次定义:组织在组件库中提供应用页眉等组件,制作者选择所需组件并按目标应用进行配置,而不必在不同应用中一遍遍重建同样的页眉。11Work with component libraries - Traininglearn.microsoft.com前往参考资料 ↓在新标签页中打开

在报表与数据可视化项目中,缺少组件化会带来五类问题:维护成本高、效率低、统一性差、复用性差、难以协同;其中维护成本高表现为不同工程师用不同方法制作同一类组件,更新时需要所有人参与,否则模板更新不及时、不同步,进而产生更大的维护成本。1414组件化设计思维 FineReport帮助文档|报表开发|报表使用|学习教程help.fanruan.com前往参考资料 ↓在新标签页中打开

组件库让报表工程师在遇到同一类组件设计场景时可以直接拖拽复用组件,避免生产出新的样式,从而减少设计和开发的时间成本,并增强产出成品的统一性、提升用户体验。1414组件化设计思维 FineReport帮助文档|报表开发|报表使用|学习教程help.fanruan.com前往参考资料 ↓在新标签页中打开

重复制作的成本不只发生在首次搭建,还发生在后续维护:同一类组件被各自复制实现后,任何一次样式或逻辑调整都要在多处同步修改,改动点数量随副本数量线性增长,漏改即造成不一致。1414组件化设计思维 FineReport帮助文档|报表开发|报表使用|学习教程help.fanruan.com前往参考资料 ↓在新标签页中打开

重复制作还会稀释统一性:每个制作者按自己的习惯实现同一类组件,最终成品在样式与交互上出现差异,用户体验随之不统一。1414组件化设计思维 FineReport帮助文档|报表开发|报表使用|学习教程help.fanruan.com前往参考资料 ↓在新标签页中打开|11Work with component libraries - Traininglearn.microsoft.com前往参考资料 ↓在新标签页中打开

把组件库和设计规范作为项目开工前的前瞻性动作,是控制重复制作成本的一种实践取向:先定义可复用组件与复用规则,再进入具体页面或应用的搭建。1414组件化设计思维 FineReport帮助文档|报表开发|报表使用|学习教程help.fanruan.com前往参考资料 ↓在新标签页中打开

跨应用一致性

跨应用一致性指同一组织内多个应用在控件外观、交互行为与语义上保持一致,使用户在不同产品间迁移时无需重新学习操作方式;组件库通过把按钮、表格、表单控件等收敛为带版本控制的共享构建产物,使一致性从依赖个体开发者自觉转变为依赖统一依赖项。1616从可复用到可再生:重新思考共享 UI 组件库infoq.cn前往参考资料 ↓在新标签页中打开|1717B端大仓文档smart-design.fs.com前往参考资料 ↓在新标签页中打开

微软在 Power Apps 架构指南中把「提升一致性、减少冗余」列为组件的核心特征之一,并建议解决方案架构师识别可纳入组件的常用 UI 元素(如标头),由多个制作者在应用内和跨应用复用同一组件。1515浏览所有课程、学习路径和模块 - Traininglearn.microsoft.com前往参考资料 ↓在新标签页中打开

在 B 端业务体系中,若缺少统一组件库这一层,UI 设计规范难以真正落地,设计稿与实现之间的一致性无法保证,设计师与开发者会因此产生大量重复劳动和沟通成本。1717B端大仓文档smart-design.fs.com前往参考资料 ↓在新标签页中打开

基于第三方组件库做二次封装,可以在官方版本变动时抹平 API 差异,从而把上游变更对下游各业务应用的一致性冲击限制在组件库内部,而不是扩散到每个应用。1717B端大仓文档smart-design.fs.com前往参考资料 ↓在新标签页中打开

当通用模块的 UI 或交互形式需要调整时,只需升级组件库依赖即可让各接入应用同步生效,无需侵入各业务系统逐个修改,这是组件库维持跨应用一致性的主要工程机制。1717B端大仓文档smart-design.fs.com前往参考资料 ↓在新标签页中打开

有十年共享 UI 组件库实践经验的团队指出,一致性是共享库所承载的四重承诺之一,其价值在于确保一个团队的按钮、表格或表单控件的行为与另一个团队一致,这对保持用户体验的一致性至关重要。1616从可复用到可再生:重新思考共享 UI 组件库infoq.cn前往参考资料 ↓在新标签页中打开

关于跨应用一致性应当由什么来承载,存在与「统一维护已发布组件代码」不同的主张:有实践者认为,随着 AI 能快速生成带样式且基本符合无障碍标准的组件,集中管理的重心应转向设计系统、设计 token、规范与测试,而非具体组件实现。1616从可复用到可再生:重新思考共享 UI 组件库infoq.cn前往参考资料 ↓在新标签页中打开

对立说法微软与 B 端团队实践侧的文档仍把「在应用内和跨应用复用同一组件」「集中管理通用业务组件以保证统一」作为达成一致性的主要手段,即一致性依托于共享的组件实现而非仅靠规范与 token。1515浏览所有课程、学习路径和模块 - Traininglearn.microsoft.com前往参考资料 ↓在新标签页中打开|1717B端大仓文档smart-design.fs.com前往参考资料 ↓在新标签页中打开

存在争议置信度 0.60 · 核验于 2026-10-22

组件库的构成

组件源码与示例

组件库的源码通常按组件为单位组织,每个组件目录下包含实现文件、样式文件、测试文件与文档示例,这种「一个组件一个目录」的布局是 React、Vue、Angular 生态中主流组件库的常见做法。1818Ant Design 组件库 GitHub 仓库github.com前往参考资料 ↓在新标签页中打开|1919Element Plus 组件库 GitHub 仓库github.com前往参考资料 ↓在新标签页中打开

组件库的示例(examples / demos / stories)通常与组件源码同仓维护,示例既作为文档站点的内容来源,也作为回归测试与视觉测试的输入。1818Ant Design 组件库 GitHub 仓库github.com前往参考资料 ↓在新标签页中打开|2020Storybook 官方文档storybook.js.org前往参考资料 ↓在新标签页中打开

Storybook 是组件库中用于编写、组织和展示组件示例的常用工具,它把每个示例组织为 story,并支持基于这些 story 做交互测试与视觉回归测试。2020Storybook 官方文档storybook.js.org前往参考资料 ↓在新标签页中打开

组件库的文档站点通常由示例代码与说明文字共同构成,示例代码块可被直接渲染为可交互的演示,这种「文档即示例」的形态在 Ant Design、Element Plus 等库的官方文档中普遍存在。1818Ant Design 组件库 GitHub 仓库github.com前往参考资料 ↓在新标签页中打开|1919Element Plus 组件库 GitHub 仓库github.com前往参考资料 ↓在新标签页中打开

组件源码通常以 TypeScript 类型声明或 PropTypes 等形式对外暴露组件的属性接口,类型声明文件随构建产物一同分发,使使用方在编辑器中获得属性提示与类型检查。1818Ant Design 组件库 GitHub 仓库github.com前往参考资料 ↓在新标签页中打开|1919Element Plus 组件库 GitHub 仓库github.com前往参考资料 ↓在新标签页中打开

组件库的源码仓库一般包含构建脚本与打包配置,将源码编译为多种模块格式(如 ES Module、CommonJS)与样式产物,供不同使用方式消费。1818Ant Design 组件库 GitHub 仓库github.com前往参考资料 ↓在新标签页中打开|1919Element Plus 组件库 GitHub 仓库github.com前往参考资料 ↓在新标签页中打开

组件库的测试通常包括单元测试与视觉回归测试,示例与快照是视觉回归测试的主要素材来源。2020Storybook 官方文档storybook.js.org前往参考资料 ↓在新标签页中打开

组件示例的编写方式存在分歧:一派主张示例应尽量简短、只演示单一属性,另一派主张示例应贴近真实业务场景、组合多个属性与交互。两种取向在组件库文档实践中并存。1818Ant Design 组件库 GitHub 仓库github.com前往参考资料 ↓在新标签页中打开|1919Element Plus 组件库 GitHub 仓库github.com前往参考资料 ↓在新标签页中打开

待考证置信度 0.40 · 核验于 2026-10-22

文档与打包产物

组件库的文档通常包含每个组件的 API 参考(属性、事件、插槽、方法)、可交互的示例与代码片段,以及设计指南和使用规范;文档质量直接影响组件的可发现性与正确使用。2121Ant Design 组件文档ant.design前往参考资料 ↓在新标签页中打开|2222Material UI Documentationmui.com前往参考资料 ↓在新标签页中打开

主流前端组件库普遍采用「文档即站点」的形态,把示例代码与可运行演示放在同一页面,并支持在线编辑(如 CodeSandbox、StackBlitz 嵌入),以降低试用成本。2121Ant Design 组件文档ant.design前往参考资料 ↓在新标签页中打开|2020Storybook 官方文档storybook.js.org前往参考资料 ↓在新标签页中打开

组件库的打包产物通常同时提供多种模块格式:ES Module(ESM)用于现代打包工具的 tree-shaking,CommonJS(CJS)用于 Node 环境与旧工具链,UMD 用于浏览器直接引入;此外常附带独立的样式文件与类型声明文件。2323Rollup Documentation: Tree-shakingrollupjs.org前往参考资料 ↓在新标签页中打开|2424TypeScript Documentation: Publishing Declaration Filestypescriptlang.org前往参考资料 ↓在新标签页中打开

按需加载(按组件引入)是组件库打包设计的关键目标:通过 ESM 的静态结构或提供 babel 插件/独立入口,使打包工具只保留实际使用的组件代码,从而减小产物体积。2323Rollup Documentation: Tree-shakingrollupjs.org前往参考资料 ↓在新标签页中打开|2525Element Plus 快速开始element-plus.org前往参考资料 ↓在新标签页中打开

TypeScript 类型声明文件(.d.ts)已成为组件库打包产物的标准组成部分,用于在编辑器中提供属性补全与类型检查;缺少类型声明会显著降低 TypeScript 项目中的采用意愿。2424TypeScript Documentation: Publishing Declaration Filestypescriptlang.org前往参考资料 ↓在新标签页中打开|2626DefinitelyTyped GitHub Repositorygithub.com前往参考资料 ↓在新标签页中打开

组件库的样式产物存在多种分发策略:整体 CSS 文件、按组件拆分的 CSS、CSS-in-JS 运行时注入,以及基于 CSS 变量的主题定制;不同策略在体积、可覆盖性和运行时开销上各有取舍。2222Material UI Documentationmui.com前往参考资料 ↓在新标签页中打开|2727CSS Variables (Custom Properties) - MDNdeveloper.mozilla.org前往参考资料 ↓在新标签页中打开

语义化版本(SemVer)是组件库发布与文档中常见的版本管理约定,破坏性变更通过主版本号递增传达,并在更新日志与迁移指南中说明。2828Semantic Versioning 2.0.0semver.org前往参考资料 ↓在新标签页中打开|2929npm Documentation: About semantic versioningdocs.npmjs.com前往参考资料 ↓在新标签页中打开

组件库的文档站点本身常由组件库自身或同类工具构建(dogfooding),例如使用 Storybook 或基于组件库搭建的静态站点生成器,使文档与组件实现保持同步。2020Storybook 官方文档storybook.js.org前往参考资料 ↓在新标签页中打开|3030Docusaurus Documentationdocusaurus.io前往参考资料 ↓在新标签页中打开

打包产物的副作用标记(sideEffects 字段)与模块入口(exports 字段)配置,会影响打包工具的 tree-shaking 与条件导出行为,是组件库打包配置中容易被忽视但影响产物体积的细节。2323Rollup Documentation: Tree-shakingrollupjs.org前往参考资料 ↓在新标签页中打开|3131Webpack Documentation: Tree Shakingwebpack.js.org前往参考资料 ↓在新标签页中打开

组件库文档的可访问性(如键盘导航、屏幕阅读器支持)与组件本身的可访问性同样重要,但实践中文档站点的可访问性常被忽视。3232Web Content Accessibility Guidelines (WCAG) 2.2w3.org前往参考资料 ↓在新标签页中打开

待考证置信度 0.50 · 核验于 2026-10-22

测试与构建配置

组件库的测试配置通常包含单元测试、组件测试与视觉回归测试三个层次:单元测试针对纯逻辑函数,组件测试在模拟 DOM 环境中验证渲染与交互,视觉回归测试则对组件截图做像素级比对以捕捉非预期的样式变化。3333Testingstorybook.js.org前往参考资料 ↓在新标签页中打开|3434Visual regression testingplaywright.dev前往参考资料 ↓在新标签页中打开

视觉回归测试工具通常采用「基线截图 + 当前截图」的比对模型,Playwright 内置的 toHaveScreenshot 断言会在首次运行时生成基线快照,后续运行与之逐像素比较,并在差异超过阈值时失败。3535toHaveScreenshotplaywright.dev前往参考资料 ↓在新标签页中打开

组件库的构建配置普遍需要同时产出多种模块格式:ESM 供现代打包器做 tree-shaking,CommonJS 供 Node 端与旧工具链消费,类型声明文件(.d.ts)供 TypeScript 使用者获得类型提示,三者通常由同一份源码经不同编译目标生成。3636Publishing a packagedocs.npmjs.com前往参考资料 ↓在新标签页中打开|2424TypeScript Documentation: Publishing Declaration Filestypescriptlang.org前往参考资料 ↓在新标签页中打开

Vite 的库模式(build.lib)允许把组件库入口直接编译为 ESM 与 UMD/CJS 产物,并可通过 rollupOptions.external 把框架运行时(如 React、Vue)排除在打包结果之外,交由使用方提供,从而避免同一框架被重复打包。3737Library Modevitejs.dev前往参考资料 ↓在新标签页中打开

组件库的样式产物需要单独考虑:把 CSS 从 JS 中抽离为独立文件(如通过 Vite 的 cssCodeSplit 或 PostCSS 插件)可以让使用方按需引入样式,而 CSS-in-JS 方案则把样式随组件代码一起分发,两种做法在构建配置上的取舍不同。3737Library Modevitejs.dev前往参考资料 ↓在新标签页中打开|3838PostCSSpostcss.org前往参考资料 ↓在新标签页中打开

组件库的发布流程通常包含版本号管理与变更日志生成,Changesets 这类工具通过让每个改动附带一个变更描述文件,在发布时自动汇总生成 CHANGELOG 并推导语义化版本号,减少手工维护成本。3939Changesetsgithub.com前往参考资料 ↓在新标签页中打开

持续集成中,组件库常在多个 Node 版本与多个操作系统上跑测试矩阵,以覆盖不同运行时与文件系统差异带来的问题;GitHub Actions 的矩阵策略(matrix)是常见实现方式。4040Using a matrix for your jobsdocs.github.com前往参考资料 ↓在新标签页中打开

组件库的构建产物常配合 package.json 的 exports 字段做条件导出,按 import、require、types 等条件把不同格式的入口映射给不同消费方,这一机制自 Node.js 12.7 起以实验性形式引入,后成为稳定特性。4141Node.js Packages: exports fieldnodejs.org前往参考资料 ↓在新标签页中打开

对于以 Web Components 形式分发的组件库,构建配置还需处理自定义元素注册与 Shadow DOM 样式封装,测试时往往需要在真实浏览器中运行而非仅依赖 jsdom,因为 jsdom 对 Shadow DOM 与部分 CSS 特性的支持有限。77Web Componentsdeveloper.mozilla.org前往参考资料 ↓在新标签页中打开

分发与使用方式

包管理器分发

包管理器分发是组件库最主流的交付方式:组件库以 npm 包的形式发布到公共或私有注册表,使用者通过 npm、yarn、pnpm 等包管理器安装,并在构建阶段把组件代码打包进自己的应用。4242npm Docs: About packages and modulesdocs.npmjs.com前往参考资料 ↓在新标签页中打开|4343npm Docs: Downloading and installing packages locallydocs.npmjs.com前往参考资料 ↓在新标签页中打开

npm 注册表是 JavaScript 生态中规模最大的包注册表,组件库通常以 npm 包的形式发布,包名遵循 npm 的命名规则,作用域包(如 @scope/name)常用于组织同一组织或团队下的多个组件包。4242npm Docs: About packages and modulesdocs.npmjs.com前往参考资料 ↓在新标签页中打开|4444npm Docs: Scopedocs.npmjs.com前往参考资料 ↓在新标签页中打开

组件库的 package.json 中通常通过 main、module、exports 等字段声明入口,并通过 peerDependencies 声明对 React、Vue 等框架的依赖,以避免同一框架被重复打包导致多实例问题。4141Node.js Packages: exports fieldnodejs.org前往参考资料 ↓在新标签页中打开|4545npm Docs: package.jsondocs.npmjs.com前往参考资料 ↓在新标签页中打开

组件库常采用按需加载的分发策略:通过 ES 模块的 tree-shaking 或提供单独的按组件入口(如 lib/button),使打包工具只包含实际使用的组件,从而减小最终产物体积。3131Webpack Documentation: Tree Shakingwebpack.js.org前往参考资料 ↓在新标签页中打开|2323Rollup Documentation: Tree-shakingrollupjs.org前往参考资料 ↓在新标签页中打开

语义化版本(SemVer)是组件库发布时普遍遵循的版本约定,主版本号变更表示不兼容的 API 修改,组件库通常通过变更日志和迁移指南帮助使用者在主版本升级时完成适配。2828Semantic Versioning 2.0.0semver.org前往参考资料 ↓在新标签页中打开|2929npm Documentation: About semantic versioningdocs.npmjs.com前往参考资料 ↓在新标签页中打开

对于企业内部的私有组件库,常见的分发方式包括搭建私有 npm 注册表(如 Verdaccio、Nexus Repository)或在制品仓库中托管,以便在受控网络内完成安装与版本管理。4646Verdaccio: A lightweight private npm proxy registryverdaccio.org前往参考资料 ↓在新标签页中打开|4747Sonatype Nexus Repository: npm Registryhelp.sonatype.com前往参考资料 ↓在新标签页中打开

包管理器分发使组件库能够借助锁文件(如 package-lock.json、yarn.lock、pnpm-lock.yaml)固定依赖版本,从而在不同环境和持续集成中复现相同的依赖树。4848npm Docs: package-lock.jsondocs.npmjs.com前往参考资料 ↓在新标签页中打开|4949pnpm Documentation: Lockfilepnpm.io前往参考资料 ↓在新标签页中打开

包管理器分发也带来一些使用上的负担:使用者需要自行配置构建工具、处理样式文件的引入方式(如 CSS 文件、CSS-in-JS 或样式按需加载),并承担依赖升级与安全漏洞修复的成本。5050Ant Design: Getting Startedant.design前往参考资料 ↓在新标签页中打开|5151GitHub Docs: About Dependabot security updatesdocs.github.com前往参考资料 ↓在新标签页中打开

按需引入

按需引入(on-demand import)指使用方只加载实际用到的组件及其样式,而非一次性引入整个组件库;其直接目的是减小打包产物体积、缩短首屏加载时间。3131Webpack Documentation: Tree Shakingwebpack.js.org前往参考资料 ↓在新标签页中打开|5252MDN Web Docs:JavaScript modulesdeveloper.mozilla.org前往参考资料 ↓在新标签页中打开

在基于 ES Module 的构建工具(如 webpack、Vite、Rollup)中,按需引入通常依赖组件库提供的具名导出(named export)与构建工具的 tree-shaking 能力:只要组件库以 ESM 形式发布且无副作用(sideEffects 声明正确),未被引用的组件即可在打包时被剔除。2323Rollup Documentation: Tree-shakingrollupjs.org前往参考资料 ↓在新标签页中打开|5353Vite 官方文档:依赖预构建与生产构建vitejs.dev前往参考资料 ↓在新标签页中打开

对于以 CommonJS 或 UMD 形式发布、且样式与组件耦合的旧式组件库,仅靠 tree-shaking 往往无法剔除未使用组件,需要借助 babel-plugin-import 一类编译期插件,把整包引入语句改写为指向单个组件目录的引入语句,从而实现按需加载。5454babel-plugin-importnpmjs.com前往参考资料 ↓在新标签页中打开|5555Ant Design 官方文档:按需加载ant.design前往参考资料 ↓在新标签页中打开

Element Plus 官方文档给出按需引入的自动导入方案:借助 unplugin-vue-components 与 unplugin-auto-import,在 Vite 或 webpack 中自动识别模板里用到的组件并只注册这些组件,同时按需注入对应样式。2525Element Plus 快速开始element-plus.org前往参考资料 ↓在新标签页中打开

按需引入并非没有代价:它把「引入哪些组件」的决策从运行时前移到构建期,增加了构建配置的复杂度;当组件之间存在隐式依赖(如某个组件内部引用了另一个组件或公共样式)时,配置不当可能导致样式缺失或运行时报错。5656unplugin-vue-componentsnpmjs.com前往参考资料 ↓在新标签页中打开

随着构建工具对 ESM 与 tree-shaking 的支持趋于成熟,以及组件库普遍转向 ESM 发布,按需引入正从「需要额外插件的手动配置」演变为「构建工具默认行为即可覆盖」的能力;babel-plugin-import 这类编译期插件在新版本组件库中的必要性相应下降。3737Library Modevitejs.dev前往参考资料 ↓在新标签页中打开

主题定制

组件库的主题定制通常指在不改动组件内部实现的前提下,通过覆盖设计令牌(颜色、圆角、间距、字体、阴影等)或替换样式变量,使同一套组件呈现不同品牌或不同视觉风格。5757前端组件库——shadcn/ui知识点大全(一)-阿里云开发者社区developer.aliyun.com前往参考资料 ↓在新标签页中打开

以 shadcn/ui 为代表的「源码复制」型组件方案把主题定制的门槛降到最低:组件源码(如 button.tsx)通过 CLI 直接复制进项目,样式基于 Tailwind CSS,开发者可直接修改类名与 CSS 变量,而不必与 node_modules 里的黑盒包和样式覆盖规则搏斗。5757前端组件库——shadcn/ui知识点大全(一)-阿里云开发者社区developer.aliyun.com前往参考资料 ↓在新标签页中打开

传统「安装即用」的 npm 组件包在主题定制上依赖文档提供的覆盖方式(如主题变量、CSS 优先级覆盖、样式 props),一旦设计团队要求调整组件圆角等细节,往往需要翻阅文档寻找覆盖入口,且升级时担心 API 变更导致界面崩溃。5757前端组件库——shadcn/ui知识点大全(一)-阿里云开发者社区developer.aliyun.com前往参考资料 ↓在新标签页中打开

主题定制的实现层次大致可分为三层:设计令牌层(颜色、字号、圆角等原子变量)、组件样式层(组件如何消费令牌)、应用级覆盖层(全局主题切换、暗色模式、品牌换肤),成熟的组件库通常把令牌层单独抽出来作为公开契约。5757前端组件库——shadcn/ui知识点大全(一)-阿里云开发者社区developer.aliyun.com前往参考资料 ↓在新标签页中打开

待考证置信度 0.50 · 核验于 2026-10-22

主题定制与「分发方式」强相关:以源码分发(复制进项目)的组件集合把定制权完全交给使用方,以二进制包分发(npm 依赖)的组件库则必须通过公开的主题 API 或 CSS 变量约定来开放定制能力,二者的定制路径与升级风险不同。5757前端组件库——shadcn/ui知识点大全(一)-阿里云开发者社区developer.aliyun.com前往参考资料 ↓在新标签页中打开

主题定制不只是换颜色,还涉及圆角、间距、字体、阴影等形状与排版参数;shadcn/ui 一类方案把这些参数放在 Tailwind 配置与 CSS 变量中,使同一套组件能在不同产品线间复用而保持视觉一致。5757前端组件库——shadcn/ui知识点大全(一)-阿里云开发者社区developer.aliyun.com前往参考资料 ↓在新标签页中打开

主题定制能力是评估组件库可维护性的重要维度:定制入口越靠近令牌层、越少依赖选择器优先级覆盖,升级组件库版本时样式回归的风险越小。5757前端组件库——shadcn/ui知识点大全(一)-阿里云开发者社区developer.aliyun.com前往参考资料 ↓在新标签页中打开

待考证置信度 0.50 · 核验于 2026-10-22

按技术栈与运行环境分类

框架专用组件库

框架专用组件库是指与某一前端框架(如 React、Vue、Angular)深度绑定、以该框架的组件模型(如 React 的 JSX 与 Hooks、Vue 的单文件组件与响应式系统、Angular 的装饰器与依赖注入)为唯一或主要实现载体的组件库;其组件通常以该框架的原生组件形式发布,而非框架无关的 Web Components。1010Components Basicsvuejs.org前往参考资料 ↓在新标签页中打开

React 生态中具有代表性的框架专用组件库包括 Material UI(MUI)、Ant Design 的 React 实现、Chakra UI 与 Mantine;这些库均以 React 组件形式分发,并依赖 React 的渲染与状态机制。2222Material UI Documentationmui.com前往参考资料 ↓在新标签页中打开|5858Ant Design of Reactant.design前往参考资料 ↓在新标签页中打开

Vue 生态中具有代表性的框架专用组件库包括 Vuetify、Element Plus、Naive UI 与 PrimeVue 的 Vue 版本;它们以 Vue 单文件组件或 Vue 插件形式提供,并依赖 Vue 的响应式系统与插槽机制。5959Vuetify: Material Design Framework for Vue.jsvuetifyjs.com前往参考资料 ↓在新标签页中打开|6060Element Plus: A Vue 3 UI libraryelement-plus.org前往参考资料 ↓在新标签页中打开

Angular 生态中具有代表性的框架专用组件库包括 Angular Material 与 NG-ZORRO;二者均以 Angular 模块与组件形式发布,并依赖 Angular 的依赖注入与变更检测机制。6161Angular Material: Material Design components for Angularmaterial.angular.io前往参考资料 ↓在新标签页中打开|6262NG-ZORRO: An enterprise-class Angular UI component libraryng.ant.design前往参考资料 ↓在新标签页中打开

框架专用组件库的样式方案通常与该框架的生态习惯耦合:React 侧常见 CSS-in-JS(如 styled-components、Emotion)或原子化 CSS(如 Tailwind CSS)配合,Vue 侧常见单文件组件内的 scoped CSS 或 CSS 变量主题方案,Angular 侧常见基于 Angular 样式封装(ViewEncapsulation)的方案。6363MUI: Styling solutionsmui.com前往参考资料 ↓在新标签页中打开|6464Vue.js Documentation: SFC CSS Featuresvuejs.org前往参考资料 ↓在新标签页中打开|6565Angular Documentation: Component stylesangular.io前往参考资料 ↓在新标签页中打开

框架专用组件库在服务端渲染(SSR)与静态站点生成(SSG)场景下需要额外处理样式注入与 hydration 一致性;例如 MUI 在 Next.js 中需通过 Emotion 的缓存配置避免样式闪烁,Vuetify 在 Nuxt 中需注册为模块以处理 SSR 样式提取。6666MUI: Server-side rendering with Next.jsmui.com前往参考资料 ↓在新标签页中打开|5959Vuetify: Material Design Framework for Vue.jsvuetifyjs.com前往参考资料 ↓在新标签页中打开

框架专用组件库的版本兼容性通常与宿主框架的大版本强绑定:例如 Angular Material 的主版本号与 Angular 主版本号保持同步,Vuetify 3 仅支持 Vue 3,MUI v5 要求 React 17 及以上。6161Angular Material: Material Design components for Angularmaterial.angular.io前往参考资料 ↓在新标签页中打开|5959Vuetify: Material Design Framework for Vue.jsvuetifyjs.com前往参考资料 ↓在新标签页中打开|2222Material UI Documentationmui.com前往参考资料 ↓在新标签页中打开

与框架无关的 Web Components 组件库(如 Shoelace、Lit 基础组件)相比,框架专用组件库能更充分地利用宿主框架的响应式更新、类型推导与开发工具链,但代价是跨框架复用性差,切换框架时通常需要整体替换组件库。6767Shoelace: A forward-thinking library of web componentsshoelace.style前往参考资料 ↓在新标签页中打开|6868Lit: Simple. Fast. Web Components.lit.dev前往参考资料 ↓在新标签页中打开

部分组件库同时提供框架专用封装与底层无框架核心,例如 Radix UI 以无样式、可访问的原语形式提供 React 组件,其模式被 shadcn/ui 等以复制源码方式分发的方案采用;这类方案仍属于框架专用范畴,因为其组件实现依赖 React 的组合模型。6969Radix UI: Unstyled, accessible components for building high-quality design systemsradix-ui.com前往参考资料 ↓在新标签页中打开|7070shadcn/ui: Beautifully designed components that you can copy and paste into your appsui.shadcn.com前往参考资料 ↓在新标签页中打开

框架专用组件库的文档与示例通常以该框架的惯用写法呈现,这降低了同框架开发者的上手成本,但也意味着示例代码无法直接迁移到其他框架。5858Ant Design of Reactant.design前往参考资料 ↓在新标签页中打开|6060Element Plus: A Vue 3 UI libraryelement-plus.org前往参考资料 ↓在新标签页中打开

跨框架 Web Components 组件库

Web Components 是一组由 W3C/WHATWG 标准化并已进入浏览器原生实现的 Web 平台 API,核心包括自定义元素(Custom Elements)、影子 DOM(Shadow DOM)、HTML 模板(HTML Templates)与后来的 Shadow DOM 样式封装等规范,使开发者可以定义与框架无关、可被任意页面复用的自定义 HTML 元素。77Web Componentsdeveloper.mozilla.org前往参考资料 ↓在新标签页中打开|7171Using shadow DOM - MDN Web Docsdeveloper.mozilla.org前往参考资料 ↓在新标签页中打开

由于 Web Components 基于浏览器原生能力而非某个框架的运行时,用其封装的组件理论上可以在 React、Vue、Angular、Svelte 等不同框架的页面中直接以 HTML 标签形式使用,这是“跨框架组件库”这一形态的技术基础。77Web Componentsdeveloper.mozilla.org前往参考资料 ↓在新标签页中打开|7272Custom elements - MDN Web Docsdeveloper.mozilla.org前往参考资料 ↓在新标签页中打开

Web Components 的跨框架可用性并非零成本:自定义元素与框架的模板/属性绑定机制存在阻抗,例如 React 在 19 之前对自定义元素的事件绑定与属性传递支持不完整,需要额外封装或使用兼容层。7373Web Components - Reactreact.dev前往参考资料 ↓在新标签页中打开|7474React 19 发布说明react.dev前往参考资料 ↓在新标签页中打开

React 19 起官方改进了对自定义元素(Web Components)的支持,允许在 JSX 中直接向自定义元素传递属性并绑定事件,减少了此前必须手写 ref 与 addEventListener 的样板代码。7474React 19 发布说明react.dev前往参考资料 ↓在新标签页中打开

Shadow DOM 带来的样式隔离是 Web Components 组件库的主要卖点之一,但也带来主题定制与全局样式穿透的困难,通常需要借助 CSS 自定义属性(CSS Custom Properties)或 ::part() 伪元素开放受控的样式接口。7171Using shadow DOM - MDN Web Docsdeveloper.mozilla.org前往参考资料 ↓在新标签页中打开|7575::part() - MDN Web Docsdeveloper.mozilla.org前往参考资料 ↓在新标签页中打开

服务端渲染与声明式 Shadow DOM(Declarative Shadow DOM)是 Web Components 在 SSR 场景下的关键补充,它允许服务端直接输出带影子根的 HTML,避免首屏闪烁与客户端二次渲染。7676Declarative Shadow DOM - web.devweb.dev前往参考资料 ↓在新标签页中打开

以 Web Components 为底层实现、再为各框架提供包装层的“跨框架组件库”是一种常见工程策略,代表做法包括 Shoelace(后更名 Web Awesome)、Spectrum Web Components、FAST 等,它们同时发布原生自定义元素与 React 等框架的封装包。6767Shoelace: A forward-thinking library of web componentsshoelace.style前往参考资料 ↓在新标签页中打开|7777Spectrum Web Componentsopensource.adobe.com前往参考资料 ↓在新标签页中打开|7878FAST - The adaptive interface system for modern web experiencesfast.design前往参考资料 ↓在新标签页中打开

Shoelace 是一个基于 Web Components 构建的开源组件库,官方定位为“可在任意框架或无框架环境下使用”,并提供面向 React 的包装包以改善开发体验。6767Shoelace: A forward-thinking library of web componentsshoelace.style前往参考资料 ↓在新标签页中打开

Adobe 的 Spectrum Web Components 基于 Web Components 标准实现,用于在多种框架与平台间共享同一套设计系统组件。7777Spectrum Web Componentsopensource.adobe.com前往参考资料 ↓在新标签页中打开

微软的 FAST 项目提供了一套用于构建 Web Components 的底层库与设计系统组件,强调标准化与跨框架复用。7878FAST - The adaptive interface system for modern web experiencesfast.design前往参考资料 ↓在新标签页中打开

跨框架 Web Components 组件库的代价包括:包体积与运行时开销、与框架生态(如 React 的受控组件模式、表单库集成)的集成摩擦,以及设计系统团队需要同时维护原生组件与多框架包装层的成本。7272Custom elements - MDN Web Docsdeveloper.mozilla.org前往参考资料 ↓在新标签页中打开|7373Web Components - Reactreact.dev前往参考资料 ↓在新标签页中打开

在低代码与平台内置场景中,Web Components 因与宿主框架解耦,常被选作插件式组件或第三方扩展的封装格式,使平台可以在不绑定具体前端框架的前提下加载外部组件。7272Custom elements - MDN Web Docsdeveloper.mozilla.org前往参考资料 ↓在新标签页中打开

待考证置信度 0.50 · 核验于 2026-10-22

全端/多端组件库

全端/多端组件库指同一套组件源码或同一套组件 API,经编译、运行时适配或平台桥接,可同时运行在 Web、移动端原生、小程序、桌面端等多个目标环境中的组件库形态;其核心诉求是让开发者写一次组件调用,就能在不同终端上获得符合该终端交互习惯的呈现。7979Taro 官方文档:多端开发docs.taro.zone前往参考资料 ↓在新标签页中打开|8080uni-app 官方文档:跨平台开发uniapp.dcloud.net.cn前往参考资料 ↓在新标签页中打开

Taro 是京东开源的跨端框架,采用 React 语法编写,通过编译时把同一份组件与页面代码分别编译为微信小程序、支付宝小程序、H5、React Native 等目标平台的产物;其组件库 @tarojs/components 以统一 API 屏蔽各端原生组件的差异,是典型的编译型多端组件方案。8181Taro 组件库文档docs.taro.zone前往参考资料 ↓在新标签页中打开|8282Taro GitHub 仓库github.com前往参考资料 ↓在新标签页中打开

uni-app 由 DCloud 推出,使用 Vue 语法,通过编译器把同一套组件与页面代码发布到 iOS、Android、H5 以及微信、支付宝、百度等各家小程序平台;其内置组件与 uni-ui 扩展组件库均以跨端一致性为设计目标。8383uni-app 组件文档uniapp.dcloud.net.cn前往参考资料 ↓在新标签页中打开|8484uni-ui 介绍 | uni-app官网uniapp.dcloud.net.cn前往参考资料 ↓在新标签页中打开

Flutter 由 Google 推出,其组件库(Material 与 Cupertino 两套 Widget)不依赖各平台原生控件,而是由框架自绘 UI,因此同一套组件代码可在 Android、iOS、Web、桌面端运行并保持像素级一致;这与依赖原生控件映射的跨端方案在实现路径上不同。8585Flutter 官方文档:Introduction to widgetsdocs.flutter.dev前往参考资料 ↓在新标签页中打开|8686Flutter GitHub 仓库github.com前往参考资料 ↓在新标签页中打开

React Native 的组件以原生控件为渲染目标,通过桥接或新架构(Fabric)把 React 组件树映射为平台原生视图,因此其组件在不同平台上呈现的是各平台原生外观,而非完全一致的自绘外观。8787React Native 官方文档:核心组件与原生组件reactnative.dev前往参考资料 ↓在新标签页中打开|8888React Native 新架构(Fabric)文档reactnative.dev前往参考资料 ↓在新标签页中打开

面向多端时,组件库通常需要在「一致性」与「平台原生体验」之间取舍:自绘型方案(如 Flutter)保证跨端外观一致但需自行实现平台细节,映射型方案(如 React Native、Taro)保留原生观感但需为各端分别适配组件行为与样式。8585Flutter 官方文档:Introduction to widgetsdocs.flutter.dev前往参考资料 ↓在新标签页中打开|8787React Native 官方文档:核心组件与原生组件reactnative.dev前往参考资料 ↓在新标签页中打开|8181Taro 组件库文档docs.taro.zone前往参考资料 ↓在新标签页中打开

小程序平台各自定义了一套内置组件(如 view、text、button 等),不同平台的组件属性与事件存在差异,因此跨端组件库往往需要维护一份组件属性映射表,并在编译期做差异抹平。8181Taro 组件库文档docs.taro.zone前往参考资料 ↓在新标签页中打开|8383uni-app 组件文档uniapp.dcloud.net.cn前往参考资料 ↓在新标签页中打开

Kraken 是阿里巴巴开源的基于 Flutter 的 Web 渲染引擎,允许用 W3C 标准的 HTML/CSS 编写界面并在多端渲染,其配套的组件能力体现了「用 Web 技术栈写一次、多端渲染」的另一条多端组件路径。8989Kraken GitHub 仓库github.com前往参考资料 ↓在新标签页中打开

多端组件库的跨端一致性通常只覆盖组件的 API 与基础交互,复杂组件(如日期选择、地图、富文本)在各端仍常需平台特定实现或降级方案,这是该类组件库在实践中被反复提及的局限。8181Taro 组件库文档docs.taro.zone前往参考资料 ↓在新标签页中打开|8383uni-app 组件文档uniapp.dcloud.net.cn前往参考资料 ↓在新标签页中打开

二次开发型组件库

二次开发型组件库指以某个基础组件库为底座、通过主题变量、插槽、扩展点或包装组件在其上定制出符合自身设计规范的组件集合,而非从零实现每个组件。9090Element Plus - Custom Themeelement-plus.org前往参考资料 ↓在新标签页中打开|9191Ant Design - Customize Themeant.design前往参考资料 ↓在新标签页中打开

Element Plus 提供基于 CSS 变量的主题定制机制,允许通过覆盖变量值改变组件外观,并支持按需引入以减小打包体积。9292Element Plus - Quick Startelement-plus.org前往参考资料 ↓在新标签页中打开

Ant Design 通过 ConfigProvider 与 Design Token 体系支持全局主题与组件级定制,使二次开发可以在不修改组件源码的前提下调整视觉与部分行为。9393Ant Design - ConfigProviderant.design前往参考资料 ↓在新标签页中打开

Vuetify 提供基于 SASS 变量的主题定制与可配置的组件默认属性(defaults),是二次开发型组件库的典型形态之一。9494Vuetify - Themevuetifyjs.com前往参考资料 ↓在新标签页中打开

二次开发型组件库常见于企业统一设计语言(Design System)的落地:团队在开源基础库之上封装品牌主题、业务组件与交互规范,形成内部组件库。9595Design Systems: A practical guide to creating design languages for digital productssmashingmagazine.com前往参考资料 ↓在新标签页中打开

二次开发型组件库的维护成本与上游版本演进强相关:上游发生破坏性变更时,二次开发层需要同步适配,否则会出现样式或行为不一致。2828Semantic Versioning 2.0.0semver.org前往参考资料 ↓在新标签页中打开

与从零自研的组件库相比,二次开发型组件库在初期交付速度和无障碍、国际化等基础能力上通常更有优势,但定制深度受上游扩展点限制。9595Design Systems: A practical guide to creating design languages for digital productssmashingmagazine.com前往参考资料 ↓在新标签页中打开|9696Material Design - Componentsm3.material.io前往参考资料 ↓在新标签页中打开

设计侧与开发侧的双重角色

设计资源库

设计资源库(design asset library)指以可复用设计资产为核心的组织形态,典型资产包括设计令牌(design tokens)、组件视觉规范、图标集、字体与配色方案,以及面向 Figma、Sketch 等设计工具的组件库文件;其目标是在设计阶段就建立可复用的最小单元,使界面设计与前端实现共享同一套命名与结构。9797Design systemen.wikipedia.org前往参考资料 ↓在新标签页中打开|9595Design Systems: A practical guide to creating design languages for digital productssmashingmagazine.com前往参考资料 ↓在新标签页中打开

设计令牌是设计资源库与代码之间的关键衔接层:它把颜色、字体、间距、圆角、阴影等设计决策抽象为与平台无关的键值对,再由构建工具输出为 CSS 变量、Sass 变量、iOS/Android 资源或 JavaScript 常量,从而让同一份设计决策同时驱动设计工具与多端代码。9898Design Tokensw3.org前往参考资料 ↓在新标签页中打开|9999What are design tokens?css-tricks.com前往参考资料 ↓在新标签页中打开

Salesforce 的 Lightning Design System 是较早把设计系统以「设计资源 + 组件代码 + 使用指南」三位一体方式公开发布的实例,其站点同时提供设计规范、图标与组件示例,常被后续设计系统引为参照。100100Lightning Design Systemlightningdesignsystem.com前往参考资料 ↓在新标签页中打开

Google 的 Material Design 以公开的设计指南、图标库与组件规范形式发布,Material Symbols 图标以可变字体(variable font)形式分发,可在单一字体文件内调节字重、填充等轴,体现了设计资源以可参数化资产分发的趋势。101101Material Designm3.material.io前往参考资料 ↓在新标签页中打开|102102Material Symbolsfonts.google.com前往参考资料 ↓在新标签页中打开

设计资源库与开发侧组件库之间存在结构性落差:设计工具中的组件以图层与样式表达,代码中的组件以属性、状态与插槽表达,两者难以自动保持同步,业界普遍需要借助令牌管道、插件或人工评审来维持一致性。103103Design tokens: The bridge between design and codeuxdesign.cc前往参考资料 ↓在新标签页中打开

Figma 的组件(component)与变体(variant)机制允许把按钮、输入框等界面元素定义为可复用主组件,并以属性组合生成变体集,设计资源库因此可以在设计工具内部形成与代码组件库结构近似的资产体系。104104Create and use componentshelp.figma.com前往参考资料 ↓在新标签页中打开

设计资源库的治理通常涉及版本管理、命名约定与贡献流程:资产需要像代码一样被评审、标注变更并发布版本,否则容易出现同一组件多份副本、命名漂移与废弃资产长期滞留的问题。105105Maintaining a design systemdesignsystemsrepo.com前往参考资料 ↓在新标签页中打开

设计资源库的受益方不止设计团队:产品经理可借助既有资产快速搭建原型,开发团队可依据同一套令牌与规范减少还原偏差,品牌团队则通过集中维护配色与字体保证跨产品一致性。106106The value of design systemsinvisionapp.com前往参考资料 ↓在新标签页中打开|107107Design Systems Handbookdesignbetter.co前往参考资料 ↓在新标签页中打开

设计资源库的常见失效模式是「发布即停滞」:资产在首次发布后缺乏维护预算与责任人,随着产品迭代逐渐与线上实现脱节,最终被团队绕开而失去权威性。108108Why design systems failuxdesign.cc前往参考资料 ↓在新标签页中打开

代码组件库

代码组件库在设计侧与开发侧的双重角色,首先体现为它是设计资产的代码化落点:设计系统中定义的基础组件、业务组件与 Design Token,最终要由前端团队编写成可复用的组件代码并发布,供各业务线调用。109109"打通设计与研发效率最后一公里”-云事业部前端团队 D2C/C2D落地经验分享-京东云开发者社区developer.jdcloud.com前往参考资料 ↓在新标签页中打开

在京东云前端团队的实践中,业务组件库被定位为提升研发职能内部效率的产物:其业务组件库累计沉淀 140 余个业务组件,供各业务线使用,团队称累计提效 840 余人/天。109109"打通设计与研发效率最后一公里”-云事业部前端团队 D2C/C2D落地经验分享-京东云开发者社区developer.jdcloud.com前往参考资料 ↓在新标签页中打开

代码组件库同时承担设计侧资产的供给角色:设计同学需要基于基础组件与业务抽象出的高级组件、业务组件,另行投入人力完成画组件、绑定 Design Token、交付前端编写组件代码、发布设计工具可用的元件等一系列工作,这说明组件库的代码实现与设计侧元件之间存在重复劳动。109109"打通设计与研发效率最后一公里”-云事业部前端团队 D2C/C2D落地经验分享-京东云开发者社区developer.jdcloud.com前往参考资料 ↓在新标签页中打开

当设计资产与代码资产不同源时,会出现版本代差问题:设计侧的组件与 Design Token 版本可能落后于代码侧已发布的实现,导致设计稿与线上组件表现不一致。109109"打通设计与研发效率最后一公里”-云事业部前端团队 D2C/C2D落地经验分享-京东云开发者社区developer.jdcloud.com前往参考资料 ↓在新标签页中打开

为消除设计侧与代码侧的割裂,业界出现将两者同源改造的思路:京东云提出 C2D2C(Code to Design to Code)模式,把设计系统资产打通,实现一套资产在设计与代码之间双向流动。109109"打通设计与研发效率最后一公里”-云事业部前端团队 D2C/C2D落地经验分享-京东云开发者社区developer.jdcloud.com前往参考资料 ↓在新标签页中打开

代码组件库的双重角色也带来治理负担:随着企业规模扩大,判断设计的唯一可信来源(source of truth)变得越来越困难,设计系统、Figma 集成与 AI 工具被用来应对设计漂移、文档缺口与新成员上手等问题。110110Design and code - an ever evolving challenge - Anima Bloganimaapp.com前往参考资料 ↓在新标签页中打开

在早期团队中,代码组件库常直接采用开源设计库(如 Material-UI)作为起点,此时设计侧与开发侧共用同一套组件语义,双重角色天然合一;但随着业务抽象出高级组件与业务组件,两侧开始分叉,需要额外的同步机制。110110Design and code - an ever evolving challenge - Anima Bloganimaapp.com前往参考资料 ↓在新标签页中打开|109109"打通设计与研发效率最后一公里”-云事业部前端团队 D2C/C2D落地经验分享-京东云开发者社区developer.jdcloud.com前往参考资料 ↓在新标签页中打开

与设计系统的关系

组件库与设计系统不是同一层级的东西:设计系统通常被理解为包含设计原则、设计令牌(颜色、尺寸、间距等参数共识)与组件规范在内的整体体系,而组件库是这套体系中可被直接取用的成果层——设计端从组件库拼组页面,工程端只从组件库取件。设计令牌只是参数层面的共识,组件库才是对最终产出的约束。111111component-library-bidirectional-constraint-methodology.mdgithub.com前往参考资料 ↓在新标签页中打开

组件库之所以被视为设计系统落地的关键载体,是因为它把抽象的规范转成了可执行的选择集:相同行为有相同反应、相同外观承载相同语义,页面因此呈现一致的产品风格,用户看到相同组件即可理解其功能,减少额外引导成本。111111component-library-bidirectional-constraint-methodology.mdgithub.com前往参考资料 ↓在新标签页中打开

仅有规范文档不足以让设计系统真正约束产出。在缺少组件库这一强制取件入口时,实现端会持续出现散落的自制元件:有实践记录显示,某 Flutter 项目在令牌层收敛之后,表现层仍累积约百处原生组件直用与 43 处手工边框;共用同一套设计令牌的浏览器扩展端情况更严重,因为 HTML/CSS 没有原生组件边界,任意标签加样式即可成件。111111component-library-bidirectional-constraint-methodology.mdgithub.com前往参考资料 ↓在新标签页中打开

待考证置信度 0.45 · 核验于 2026-10-22

因此设计系统与组件库的关系需要由三重机制共同承载:在规格阶段先确定组件库、在流程中设置强制取件的闸门、在工具层做自动执法。宿主技术的自由度越高(HTML/CSS 高于组件类框架),这种双向约束就越必要。111111component-library-bidirectional-constraint-methodology.mdgithub.com前往参考资料 ↓在新标签页中打开

组件库作为设计端与工程端之间的双向约束,其方法论与具体 UI 框架无关,可适用于 Flutter、React、Vue、Tauri、Python GUI 等各类组件化界面开发,这说明它与设计系统的绑定关系发生在协作契约层面,而非某一技术栈的实现细节层面。111111component-library-bidirectional-constraint-methodology.mdgithub.com前往参考资料 ↓在新标签页中打开

在低代码与平台内置场景中的形态

平台内置组件库

平台内置组件库指由低代码平台、应用构建器或行业软件厂商随平台一同交付、与平台运行时和设计器深度耦合的组件集合,用户通常不单独安装或选型,而是在平台内直接拖拽使用。112112Low-code development platformen.wikipedia.org前往参考资料 ↓在新标签页中打开|113113What is a low-code platform?learn.microsoft.com前往参考资料 ↓在新标签页中打开

平台内置组件库与通用开源组件库的关键区别在于:其组件往往依赖平台私有的运行时、数据模型与渲染引擎,脱离该平台后无法独立运行,因而可移植性显著低于 npm 等包管理器分发的组件库。112112Low-code development platformen.wikipedia.org前往参考资料 ↓在新标签页中打开|114114Component libraryen.wikipedia.org前往参考资料 ↓在新标签页中打开

在低代码平台中,内置组件库通常以「物料」或「控件面板」的形式呈现,每个组件附带属性配置 schema,使非专业开发者无需编写代码即可完成配置,这是平台内置形态区别于代码级组件库的核心交互特征。113113What is a low-code platform?learn.microsoft.com前往参考资料 ↓在新标签页中打开|115115Low-Code Platforms: A Surveyarxiv.org前往参考资料 ↓在新标签页中打开

平台内置组件库的版本节奏通常跟随平台整体发版,而非像独立组件库那样按语义化版本单独迭代,这导致用户对单个组件的升级、降级和锁定能力较弱。114114Component libraryen.wikipedia.org前往参考资料 ↓在新标签页中打开|116116Gartner Glossary: Low-Code Application Platformgartner.com前往参考资料 ↓在新标签页中打开

平台内置组件库的扩展性通常通过平台提供的插件机制或自定义组件 SDK 实现,例如允许开发者注册符合平台规范的组件,但这类扩展仍受平台运行时约束。115115Low-Code Platforms: A Surveyarxiv.org前往参考资料 ↓在新标签页中打开|117117Custom components overviewlearn.microsoft.com前往参考资料 ↓在新标签页中打开

平台内置组件库在行业软件(如 BI、CRM、ERP 厂商的搭建工具)中常与业务语义绑定,组件不仅是 UI 元素,还封装了数据源绑定、权限与业务流程逻辑,因此其抽象层级高于通用 UI 组件库。116116Gartner Glossary: Low-Code Application Platformgartner.com前往参考资料 ↓在新标签页中打开|118118The Forrester Wave: Low-Code Development Platformsforrester.com前往参考资料 ↓在新标签页中打开

由于平台内置组件库与平台生命周期绑定,当平台停止维护或迁移时,基于其构建的应用面临较高的迁移成本,这是该形态被讨论的主要局限之一。114114Component libraryen.wikipedia.org前往参考资料 ↓在新标签页中打开|118118The Forrester Wave: Low-Code Development Platformsforrester.com前往参考资料 ↓在新标签页中打开

跨应用复用

在低代码平台与业务平台内置的搭建场景中,组件库的跨应用复用通常不是靠开发者手动安装包实现的,而是由平台把组件注册到统一的物料中心或资产库,再以平台级依赖的形式注入各个应用,使同一组件在多个应用间共享同一份实现与版本。119119低代码平台中的组件物料与资产复用infoq.cn前往参考资料 ↓在新标签页中打开

在平台内置场景中,组件库往往与平台自身的主题、权限、数据源绑定,跨应用复用时复用的是组件加平台上下文,而不是一个可脱离平台独立分发的通用包,这使它的复用边界通常止于同一平台或同一租户体系之内。119119低代码平台中的组件物料与资产复用infoq.cn前往参考资料 ↓在新标签页中打开|120120Lightning Components and Packages Developer Guidedeveloper.salesforce.com前往参考资料 ↓在新标签页中打开

Salesforce 的 Lightning 组件在平台内以组件包(managed package 或 unlocked package)形式分发,安装到组织后可在该组织内的多个应用、页面与流程中复用,体现了平台内置组件库以“安装到组织”为复用单位的形态。120120Lightning Components and Packages Developer Guidedeveloper.salesforce.com前往参考资料 ↓在新标签页中打开

跨应用复用带来的主要治理问题是版本一致性:当同一组件被多个应用引用时,组件升级需要兼顾各引用方的兼容性,平台通常通过锁定版本、灰度发布或依赖声明来管理,否则会出现同一组件在不同应用中行为不一致。119119低代码平台中的组件物料与资产复用infoq.cn前往参考资料 ↓在新标签页中打开

低代码平台中的跨应用复用与代码级组件库的跨项目复用存在结构差异:前者由平台在运行时解析物料引用,后者由包管理器在构建时解析依赖,两者的版本冲突处理机制与失效模式并不相同。121121Appsmith Documentation: Building reusable UIdocs.appsmith.com前往参考资料 ↓在新标签页中打开

开源低代码平台 Appsmith 通过工作区(workspace)与可复用组件/片段的方式,让同一组织内的多个应用共享组件资源,说明跨应用复用是低代码平台普遍具备的能力而非个别产品的设计。121121Appsmith Documentation: Building reusable UIdocs.appsmith.com前往参考资料 ↓在新标签页中打开

平台内置组件库的跨应用复用会把组件的生命周期与平台版本绑定:平台升级可能同时改变组件行为,引用方应用被动继承变化,这与独立组件库由使用方自主决定升级时机的模式相反。119119低代码平台中的组件物料与资产复用infoq.cn前往参考资料 ↓在新标签页中打开|120120Lightning Components and Packages Developer Guidedeveloper.salesforce.com前往参考资料 ↓在新标签页中打开

面向特定终端的适配

移动端适配

移动端组件库的适配目标与桌面端存在结构性差异:桌面端强调功能丰富、数据密集、键盘操作与复杂表单表格,移动端则强调触摸优化、手势支持、轻量化与性能优先;因此单一响应式方案往往难以同时满足两类需求,部分组件库改用双入口点架构,在保持统一 API 表面的同时按目标平台切换行为与表现。122122前端组件库 ——OpenTiny (TinyVue) 知识点大全(二)-阿里云开发者社区developer.aliyun.com前往参考资料 ↓在新标签页中打开

TinyVue 采用 PC 端与移动优先的双入口点跨端架构,通过运行时模式检测实现平台自适应,使开发者用同一套组件库构建可随目标平台自动调整行为的应用。122122前端组件库 ——OpenTiny (TinyVue) 知识点大全(二)-阿里云开发者社区developer.aliyun.com前往参考资料 ↓在新标签页中打开

面向移动端的组件库通常需要同时覆盖 H5、各类小程序与原生 App 等多个运行宿主,uview-plus 一类 Vue3 移动组件库即以跨端同名同默认的方式提供组件,使行列布局等基础能力在 H5、小程序、App 各端保持一致表现。123123零云®uview-plus3.0重磅发布,全面的Vue3鸿蒙跨端移动组件库,组件丰富维护更新稳定。 - DCloud 插件市场ext.dcloud.net.cn前往参考资料 ↓在新标签页中打开

移动端适配中的大量工作落在平台差异的细节修补上,例如小程序端触摸事件语义与浏览器不一致:uview-plus 曾修复微信小程序中数字键盘退格键因 touchstart 事件被拦截导致短按无效、仅长按连删生效的问题,并补充 touchcancel 清理定时器以避免触摸被系统手势或滚动打断后定时器空转。123123零云®uview-plus3.0重磅发布,全面的Vue3鸿蒙跨端移动组件库,组件丰富维护更新稳定。 - DCloud 插件市场ext.dcloud.net.cn前往参考资料 ↓在新标签页中打开

刘海屏、异形屏与底部安全区是移动端组件库的固定适配项:uview-plus 为商品 SKU 组件提供 safeAreaInsetBottom 属性(默认开启)以控制底部安全距离,Flyer UI 则将刘海屏与异形屏适配作为跨平台重构的统一处理项。123123零云®uview-plus3.0重磅发布,全面的Vue3鸿蒙跨端移动组件库,组件丰富维护更新稳定。 - DCloud 插件市场ext.dcloud.net.cn前往参考资料 ↓在新标签页中打开|124124GitHub - llscw7/flyer-ui: uni-app-x ui组件库 · GitHubgithub.com前往参考资料 ↓在新标签页中打开

基于 uni-app x 的移动端组件库 Flyer UI 通过条件编译(#ifdef/#endif)区分 Android、iOS、Web 与 HarmonyOS 等目标平台,并封装 PlatformUtils 统一获取跨平台系统信息、设备检测与主题管理,把平台差异收敛到工具层而非散落在各组件中。124124GitHub - llscw7/flyer-ui: uni-app-x ui组件库 · GitHubgithub.com前往参考资料 ↓在新标签页中打开

移动端组件库还需处理横竖屏切换与平板等大屏形态,Flyer UI 在重构说明中把响应式设计列为支持平板设备和横竖屏切换的能力项,并同时提供亮色/暗色主题自动切换与无障碍增强。124124GitHub - llscw7/flyer-ui: uni-app-x ui组件库 · GitHubgithub.com前往参考资料 ↓在新标签页中打开

移动端组件库的适配负担也体现在浮层类组件的交互语义上:uview-plus 为 toast 增加 overlay 属性,关闭遮罩后提示层收缩为跟随内容大小并居中的浮动层,使提示期间页面点击与滚动可穿透,这类行为在小屏触控场景下与桌面端的模态约定明显不同。123123零云®uview-plus3.0重磅发布,全面的Vue3鸿蒙跨端移动组件库,组件丰富维护更新稳定。 - DCloud 插件市场ext.dcloud.net.cn前往参考资料 ↓在新标签页中打开

多屏幕与多交互方式

多屏幕与多交互方式适配的核心矛盾在于:桌面端组件需要功能丰富、数据密集、支持键盘操作与复杂表单表格,而移动端组件需要触摸优化、手势支持、轻量化与性能优先,传统响应式设计往往难以同时满足这两类需求。122122前端组件库 ——OpenTiny (TinyVue) 知识点大全(二)-阿里云开发者社区developer.aliyun.com前往参考资料 ↓在新标签页中打开

一种应对方式是双入口点跨端架构:组件库为 PC 端与移动优先模式分别提供入口(如 pc.ts 与移动入口),在保持统一 API 表面的同时,通过运行时模式检测让组件根据目标平台自动调整行为与表现,使开发者用单一组件库构建响应式应用。122122前端组件库 ——OpenTiny (TinyVue) 知识点大全(二)-阿里云开发者社区developer.aliyun.com前往参考资料 ↓在新标签页中打开

跨端组件库常以「无 DOM、flex 布局」为设计前提,因为小程序与混合 App 等运行环境并不提供浏览器 DOM,组件必须只依赖各端共有的渲染与布局能力才能跨全端复用。8484uni-ui 介绍 | uni-app官网uniapp.dcloud.net.cn前往参考资料 ↓在新标签页中打开

在非 H5 端(小程序与 App,无论 webview 渲染还是原生渲染),逻辑层与视图层分离会带来通讯折损,导致用 JS 监听难以实现实时跟手的拖拽类交互;组件库的常见做法是在底层封装 CSS 动画以及 wxs、bindingx 等平台技术,在需要跟手操作的组件(如列表项左滑菜单)中实现高性能交互。8484uni-ui 介绍 | uni-app官网uniapp.dcloud.net.cn前往参考资料 ↓在新标签页中打开

多端适配还包括抹平各小程序平台的差异与缺陷:例如导航栏组件自动处理不同端的状态栏,滑动操作组件在 App 与微信小程序上使用交互体验更好的 wxs 技术,而在不支持 wxs 的其他小程序端退化为 JS 模拟同类效果。8484uni-ui 介绍 | uni-app官网uniapp.dcloud.net.cn前往参考资料 ↓在新标签页中打开

持续动画类组件(轮播图、跑马灯等)在被新窗体遮挡后仍会在背景层消耗硬件资源,在 Android webview 版本为 Chrome 66 以上时可能引发明显的前台卡顿;因此跨端组件库会让组件自动判断自身可见状态,在不可见时停止消耗硬件资源。8484uni-ui 介绍 | uni-app官网uniapp.dcloud.net.cn前往参考资料 ↓在新标签页中打开

多屏幕适配不仅涉及布局断点,也涉及主题与设计令牌的联动:组件库内置原子色、语义色与布局变量等分层设计令牌,并提供多套主题与动态切换能力,使同一组件在不同屏幕密度与品牌环境下保持一致且可无障碍使用的呈现。122122前端组件库 ——OpenTiny (TinyVue) 知识点大全(二)-阿里云开发者社区developer.aliyun.com前往参考资料 ↓在新标签页中打开

代表实例

开源前端组件库

Semi Design 是由字节跳动抖音前端团队开源的企业级设计系统,同时提供 React 与 Vue 两套框架实现,组件数量超过 60 个。125125大厂开源项目,真的太爽啦,字节跳动出品!这个设计系统开源神器,让你的产品颜值与效率齐飞developer.aliyun.com前往参考资料 ↓在新标签页中打开

Semi Design 的定位不止于普通 UI 库,它强调「设计工程化」,把 Figma 设计资源与前端代码打通,追求设计稿到代码的还原一致性。125125大厂开源项目,真的太爽啦,字节跳动出品!这个设计系统开源神器,让你的产品颜值与效率齐飞developer.aliyun.com前往参考资料 ↓在新标签页中打开

Semi Design 的主题能力建立在设计 Token 体系之上,提供 200 多个可配置的设计变量,并通过 CSS 变量支持运行时主题切换与局部样式覆写。125125大厂开源项目,真的太爽啦,字节跳动出品!这个设计系统开源神器,让你的产品颜值与效率齐飞developer.aliyun.com前往参考资料 ↓在新标签页中打开

据公开报道,Semi Design 已在字节跳动内部 200 多个项目中落地验证,日均调用量超过 3000 万次。125125大厂开源项目,真的太爽啦,字节跳动出品!这个设计系统开源神器,让你的产品颜值与效率齐飞developer.aliyun.com前往参考资料 ↓在新标签页中打开

待考证置信度 0.50 · 核验于 2026-10-22

Inspira UI 是一个基于 Vue 3 与 UnoCSS 构建的 UI 组件库,主打轻量级、高定制与原子化三项特性,由前端开发者 unovue 发起。126126Inspira UI 不写一行 CSS 也能打造超好看界面 | iTrust SSLitrustssl.cn前往参考资料 ↓在新标签页中打开

Inspira UI 采用 monorepo 架构组织代码,核心组件、主题配置与本地开发测试环境分别放在 packages/components、packages/theme 与 playground 等目录中。126126Inspira UI 不写一行 CSS 也能打造超好看界面 | iTrust SSLitrustssl.cn前往参考资料 ↓在新标签页中打开

Inspira UI 的技术选型为 Vue 3 Composition API、UnoCSS 样式系统、Vite 构建工具、pnpm 包管理与 TypeScript 类型系统,组件按需引入以控制体积。126126Inspira UI 不写一行 CSS 也能打造超好看界面 | iTrust SSLitrustssl.cn前往参考资料 ↓在新标签页中打开

平台内置组件库

Salesforce 的 Lightning Design System 是平台内置组件库的典型代表:它由 Salesforce 官方维护,为 Lightning 平台上的应用提供统一的设计语言与可复用 UI 组件,组件以 Web Components 形式提供,并配有设计令牌(design tokens)体系。100100Lightning Design Systemlightningdesignsystem.com前往参考资料 ↓在新标签页中打开|127127lightning-base-componentsnpmjs.com前往参考资料 ↓在新标签页中打开

Lightning Design System 的组件实现以「lightning-base-components」等包的形式在 npm 上公开发布,说明平台内置组件库也可以同时以开源包的形式对外分发,而不仅限于平台内部使用。127127lightning-base-componentsnpmjs.com前往参考资料 ↓在新标签页中打开

SAP 的 SAPUI5 是另一个平台内置组件库的代表:它随 SAP 的 Fiori 设计体系一同提供,包含大量企业级 UI 控件,并以开源方式发布(OpenUI5),同时为 SAP 商业产品提供官方支持版本。128128SAPUI5 Documentationui5.sap.com前往参考资料 ↓在新标签页中打开|129129OpenUI5openui5.org前往参考资料 ↓在新标签页中打开

OpenUI5 的组件库按控件类别组织(如 sap.m、sap.ui.table、sap.f 等命名空间),并通过 CDN 与 npm 包两种方式分发,体现了平台内置组件库「随平台交付 + 可独立引入」的双重分发形态。129129OpenUI5openui5.org前往参考资料 ↓在新标签页中打开

Google 的 Material Design 体系下的 Material Components 提供了面向 Web(Material Web)、Android(Material Components for Android)等多端的官方组件实现,是跨平台内置组件库的代表之一。130130Material Design Componentsm3.material.io前往参考资料 ↓在新标签页中打开|131131Material Components for Androidgithub.com前往参考资料 ↓在新标签页中打开

微软的 Fluent UI 是随 Microsoft 365 与 Windows 等产品体系一同演进的官方组件库,提供 React 等实现,并在 GitHub 上以开源仓库形式维护,属于平台厂商内置组件库的典型。132132Fluent UIgithub.com前往参考资料 ↓在新标签页中打开

蚂蚁集团的 Ant Design 虽以开源社区组件库著称,但其与支付宝等平台的设计规范深度绑定,常被视作「平台设计体系衍生出的组件库」这一类别的代表,与纯平台内置组件库的边界并不严格。1818Ant Design 组件库 GitHub 仓库github.com前往参考资料 ↓在新标签页中打开

平台内置组件库的共同特征是:组件与平台的设计规范、主题系统、可访问性要求绑定发布,版本节奏跟随平台而非独立演进,因此升级往往需要与平台版本协同。100100Lightning Design Systemlightningdesignsystem.com前往参考资料 ↓在新标签页中打开|128128SAPUI5 Documentationui5.sap.com前往参考资料 ↓在新标签页中打开|132132Fluent UIgithub.com前往参考资料 ↓在新标签页中打开

垂直场景组件库

Ant Design 是蚂蚁集团(Ant Group)推出的企业级 UI 设计语言与 React 组件库,官方定位为「服务于企业级产品的设计体系」,提供大量面向中后台场景的组件(表格、表单、穿梭框、级联选择等),并配套设计资源与国际化、主题定制能力。133133Ant Design - 企业级 UI 设计语言和 React 组件库ant.design前往参考资料 ↓在新标签页中打开

Ant Design 官方文档明确其面向「中后台产品」的定位,其组件清单中包含 ProTable、EditableProTable 等由 Ant Design Pro 生态提供的高阶业务组件,说明垂直场景组件库常以「基础组件库 + 业务高阶组件」的分层方式组织。133133Ant Design - 企业级 UI 设计语言和 React 组件库ant.design前往参考资料 ↓在新标签页中打开|134134Ant Design Pro - 开箱即用的中台前端/设计解决方案pro.ant.design前往参考资料 ↓在新标签页中打开

Element Plus 是面向 Vue 3 的桌面端组件库,由饿了么(Eleme)前端团队发起并维护,是 Element UI(Vue 2 版本)的后续版本;其组件覆盖表单、表格、树形控件、日期选择等典型后台管理场景。135135Element Plus - 基于 Vue 3 的桌面端组件库element-plus.org前往参考资料 ↓在新标签页中打开

Vant 是有赞(Youzan)开源的移动端 Vue 组件库,官方定位为「轻量、可靠的移动端组件库」,组件围绕移动电商与移动端交互场景设计(如商品卡片、提交订单栏、地址编辑、下拉刷新、上拉加载等)。136136Vant - 轻量、可靠的移动端组件库vant-ui.github.io前往参考资料 ↓在新标签页中打开

Vant 提供基于 Vue 3 的 Vant 4 与基于 Vue 2 的 Vant 2/3 等版本线,并同时支持通过 npm 按需引入与 CDN 全量引入,体现了移动端垂直组件库在分发方式上的典型做法。136136Vant - 轻量、可靠的移动端组件库vant-ui.github.io前往参考资料 ↓在新标签页中打开

Taro 是由京东(JD)开源的多端统一开发框架,其配套的 Taro UI 组件库面向小程序与多端场景提供组件;Taro 生态中还存在 NutUI 等由京东风格体系衍生的组件库,用于跨端与移动端业务。137137Taro - 多端统一开发框架taro-docs.jd.com前往参考资料 ↓在新标签页中打开

NutUI 是京东风格(JD Style)的移动端组件库,官方定位为「京东风格的轻量级移动端组件库」,支持 Vue 3 与 Taro 多端(H5、小程序、React Native 等)运行,属于典型的面向特定终端与业务风格的垂直组件库。138138NutUI - 京东风格的轻量级移动端组件库nutui.jd.com前往参考资料 ↓在新标签页中打开

Arco Design 是字节跳动(ByteDance)开源的企业级设计系统与 React/Vue 组件库,官方提供 React 与 Vue 两套实现,组件覆盖中后台常见的表格、表单、图表容器等场景。139139Arco Design - 企业级设计系统arco.design前往参考资料 ↓在新标签页中打开

Semi Design 是字节跳动开源的现代企业级应用设计系统与 React 组件库,官方强调可访问性、国际化与主题定制,组件面向中后台与内容型产品。140140Semi Design - 现代企业级应用设计系统semi.design前往参考资料 ↓在新标签页中打开

Fluent UI(原 Office UI Fabric)是微软推出的设计系统与组件库,提供 React 实现,组件面向 Microsoft 365、Office 与 Windows 等产品线,属于由平台厂商主导、与自家产品深度绑定的垂直组件库。141141Fluent UI - Microsoft 设计系统与组件库developer.microsoft.com前往参考资料 ↓在新标签页中打开

Material UI(MUI)是 Google Material Design 设计语言的 React 实现,官方定位为「React 组件库,实现 Google 的 Material Design」,组件覆盖通用 Web 应用场景,是设计规范驱动型组件库的代表。142142MUI - React 组件库,实现 Material Designmui.com前往参考资料 ↓在新标签页中打开

Bootstrap 由 Twitter 团队发起,是最早广泛流行的前端 UI 框架之一,提供栅格系统、按钮、导航、模态框等通用组件与 CSS 工具类,其后续版本 Bootstrap 5 已移除对 jQuery 的依赖。143143Bootstrap - 最流行的前端框架getbootstrap.com前往参考资料 ↓在新标签页中打开

面向数据可视化的垂直组件库以 ECharts 为代表:ECharts 由百度(后转入 Apache 基金会)开源,提供折线图、柱状图、地图、关系图等大量图表类型,常被封装为 React/Vue 组件(如 echarts-for-react、vue-echarts)在业务中使用。144144Apache ECharts - 开源可视化图表库echarts.apache.org前往参考资料 ↓在新标签页中打开

面向地图场景的垂直组件库以 Leaflet 与 Mapbox GL JS 为代表:Leaflet 是开源轻量级交互地图库,Mapbox GL JS 是基于 WebGL 的矢量地图渲染库;二者常被封装为 React 组件(react-leaflet、react-map-gl)供业务系统集成。145145Leaflet - 开源交互地图库leafletjs.com前往参考资料 ↓在新标签页中打开|146146Mapbox GL JS - 基于 WebGL 的矢量地图库docs.mapbox.com前往参考资料 ↓在新标签页中打开

面向富文本编辑场景的垂直组件库以 Draft.js、Slate、TipTap 为代表:Draft.js 由 Facebook 开源,Slate 为开源富文本编辑框架,TipTap 基于 ProseMirror 提供无头(headless)编辑器组件,三者均以「编辑器内核 + 可组合扩展」的方式提供能力。147147Draft.js - 富文本编辑器框架draftjs.org前往参考资料 ↓在新标签页中打开|148148Slate - 富文本编辑框架docs.slatejs.org前往参考资料 ↓在新标签页中打开|149149TipTap - 无头富文本编辑器tiptap.dev前往参考资料 ↓在新标签页中打开

面向表格与数据网格场景的垂直组件库以 AG Grid 为代表,其提供社区版与企业版,支持排序、筛选、分组、聚合、行拖拽等大数据量表格能力,是商业组件库在垂直场景中的典型形态。150150AG Grid - 数据网格组件库ag-grid.com前往参考资料 ↓在新标签页中打开

面向表单场景的垂直组件库以 React Hook Form、Formik 为代表:React Hook Form 以非受控方式与最小重渲染为卖点,Formik 以受控表单状态管理为核心,二者均提供与 UI 组件库集成的能力。151151React Hook Form - 高性能表单库react-hook-form.com前往参考资料 ↓在新标签页中打开|152152Formik - React 表单库formik.org前往参考资料 ↓在新标签页中打开

面向拖拽与低代码搭建场景的垂直组件库以 dnd-kit、react-dnd 为代表:dnd-kit 是现代化的 React 拖拽与排序工具库,react-dnd 基于 HTML5 拖放 API 提供拖拽能力,二者常被低代码平台用于画布与组件排序。153153dnd-kit - 现代化 React 拖拽工具库dndkit.com前往参考资料 ↓在新标签页中打开|154154React DnD - React 拖拽库react-dnd.github.io前往参考资料 ↓在新标签页中打开

面向小程序与跨端场景的垂直组件库还包括 WeUI(微信官方设计团队推出的微信原生视觉体验基础样式库)与 uni-ui(uni-app 生态的跨端组件库),二者分别绑定微信小程序与 uni-app 生态。155155WeUI - 微信原生视觉体验基础样式库weui.io前往参考资料 ↓在新标签页中打开|8484uni-ui 介绍 | uni-app官网uniapp.dcloud.net.cn前往参考资料 ↓在新标签页中打开

垂直场景组件库与通用组件库的边界并不固定:许多通用组件库通过「高阶组件」「业务组件包」「生态插件」的方式向垂直场景延伸(如 Ant Design Pro 之于中后台、Vant 之于移动电商),因此「垂直」更多指组件所预设的业务语境与交互范式,而非技术上的独立品类。133133Ant Design - 企业级 UI 设计语言和 React 组件库ant.design前往参考资料 ↓在新标签页中打开|134134Ant Design Pro - 开箱即用的中台前端/设计解决方案pro.ant.design前往参考资料 ↓在新标签页中打开|136136Vant - 轻量、可靠的移动端组件库vant-ui.github.io前往参考资料 ↓在新标签页中打开

垂直场景组件库的选型通常取决于目标终端(桌面/移动/小程序)、业务领域(中后台、电商、地图、可视化、编辑器)与生态绑定(React/Vue/框架厂商),而非单纯比较组件数量;这一判断在多个组件库官方文档的定位描述中均有体现。133133Ant Design - 企业级 UI 设计语言和 React 组件库ant.design前往参考资料 ↓在新标签页中打开|136136Vant - 轻量、可靠的移动端组件库vant-ui.github.io前往参考资料 ↓在新标签页中打开|138138NutUI - 京东风格的轻量级移动端组件库nutui.jd.com前往参考资料 ↓在新标签页中打开|142142MUI - React 组件库,实现 Material Designmui.com前往参考资料 ↓在新标签页中打开

演进与趋势

从控件集到设计系统

在 2010 年代初期,Web 界面主要由 HTML、CSS 与 jQuery 组合构建,可复用的交互组件以 jQuery 插件的形式出现——即一类小型 JavaScript 库,为既有 DOM 元素附加交互行为(如模态框、日期选择器)。这一阶段的复用单位是「行为增强脚本」,而非带样式的完整组件。156156Evolution of Component Libraries | Vercel Academyvercel-docs.vercel.sh前往参考资料 ↓在新标签页中打开

组件库的演进可以按「复用单位」来划分阶段:早期是 jQuery 插件式的行为脚本,随后是框架组件(React/Vue 等以组件为分发单位),再到以设计令牌与规范为核心的治理层。Vercel 的教学材料把这一脉络作为理解 shadcn/ui 式「复制源码而非安装依赖」方案的前史来叙述。156156Evolution of Component Libraries | Vercel Academyvercel-docs.vercel.sh前往参考资料 ↓在新标签页中打开

共享组件库长期被视为工程组织的默认最佳实践:把按钮、模态窗口、数据网格与表单控件收拢进一个带版本控制的包,各团队即可同时获得一致性、易用性与效率。InfoQ 刊载的 Griffiths Waite 十年实践复盘把这一信念描述为「几乎从未受到质疑」。1616从可复用到可再生:重新思考共享 UI 组件库infoq.cn前往参考资料 ↓在新标签页中打开

Griffiths Waite 提出,共享库实际上把四重承诺耦合进同一个构建产物:可复用性(避免重复开发日期选择器等控件)、一致性(不同团队的按钮、表格、表单控件行为一致)、以及与之并列的另外两项承诺。该文认为把这四者捆绑在「已发布的组件代码」这一载体上,是理解组件库价值与局限的关键。1616从可复用到可再生:重新思考共享 UI 组件库infoq.cn前往参考资料 ↓在新标签页中打开

该复盘文章主张,值得集中管理的对象应当是设计系统、设计令牌(token)、设计规范与测试,而不是已发布的组件代码;换言之,治理重心应从「分发组件实现」上移到「分发约束与语义」。这是「从控件集到设计系统」这一转向在 2020 年代中后期的明确表述。1616从可复用到可再生:重新思考共享 UI 组件库infoq.cn前往参考资料 ↓在新标签页中打开

文章给出的动因是条件变化而非趣味变化:当开发者能在很短时间内生成一个带样式、且基本符合无障碍标准的组件时,为全公司维护一个标准组件库的价值已大不如前,对许多组织而言共享库「不再那么必要」。这一判断把 AI 代码生成能力直接接入了组件库存废的论证链条。1616从可复用到可再生:重新思考共享 UI 组件库infoq.cn前往参考资料 ↓在新标签页中打开

从「控件集」到「设计系统」的转向,在分发形态上有可观察的对应物:组件不再只以版本化依赖包的形式进入项目,也出现了把组件源码直接复制进代码库、由使用方自行持有与修改的模式。Vercel 的教学材料即以 shadcn/ui 为这一模式的代表,并将其置于组件库演进脉络的末端来讲解。156156Evolution of Component Libraries | Vercel Academyvercel-docs.vercel.sh前往参考资料 ↓在新标签页中打开

需要区分「设计系统」与「组件库」两个概念:前者是规范、令牌、原则与治理机制的集合,后者是这些约定的某一种代码实现与分发载体。上述复盘文章的核心主张正是二者可以解耦——设计系统继续集中,组件实现可以分散甚至按需生成。1616从可复用到可再生:重新思考共享 UI 组件库infoq.cn前往参考资料 ↓在新标签页中打开

跨框架与标准化

跨框架组件库的核心思路是把按钮、选择器、输入框等基础 UI 组件实现为与具体框架无关的产物,使其能同时被 Vue、Angular、React 等不同框架的应用直接集成,从而避免为每个框架各维护一套等价实现。158158Framework-Agnostic JavaScript Component Libraries: Benefits, Implementation Strategies, and Commercialization Modelsieeexplore.ieee.org前往参考资料 ↓在新标签页中打开

学术研究把框架无关的 JavaScript 组件库视为一种独立品类,讨论范围覆盖其收益、实现策略与商业化模式三个层面,说明跨框架复用已从工程技巧上升为有商业价值的产品形态。158158Framework-Agnostic JavaScript Component Libraries: Benefits, Implementation Strategies, and Commercialization Modelsieeexplore.ieee.org前往参考资料 ↓在新标签页中打开

在标准化方向上,W3C 设计令牌社区组(DTCG)提出的设计令牌格式(以 $value、$type、$description 等字段描述令牌)被当作跨工具互操作的目标格式,组件库的样式层因此有了脱离具体框架的公共交换格式。157157Knowledge — Design-systems tooling reference (2026)raw.githubusercontent.com前往参考资料 ↓在新标签页中打开

设计令牌格式本身仍处于演进之中,规范状态会变化,因此把它作为组件库跨框架、跨工具互操作基座时,需要在使用时核对当前规范状态而非假定其已冻结。157157Knowledge — Design-systems tooling reference (2026)raw.githubusercontent.com前往参考资料 ↓在新标签页中打开

有十年共享 UI 组件库实践经验的团队提出,在 AI 能快速生成带样式且基本符合无障碍标准的组件之后,集中维护已发布组件代码的必要性下降,值得集中治理的对象应转向设计系统、设计令牌、规范与测试。1616从可复用到可再生:重新思考共享 UI 组件库infoq.cn前往参考资料 ↓在新标签页中打开

上述观点把共享库拆解为可复用性、一致性等四重承诺的耦合体,认为 AI 加速削弱的是其中“复用组件代码”这一条,而非一致性与规范治理的价值,因此跨框架标准化的重心会从组件实现层上移到令牌与规范层。1616从可复用到可再生:重新思考共享 UI 组件库infoq.cn前往参考资料 ↓在新标签页中打开

跨框架标准化目前呈现两条并行路径:一条是把组件编译为框架无关的运行时产物以直接跨框架复用,另一条是先把设计令牌与规范标准化、再让各框架各自生成组件;两者并不互斥,但投入重心不同。157157Knowledge — Design-systems tooling reference (2026)raw.githubusercontent.com前往参考资料 ↓在新标签页中打开|158158Framework-Agnostic JavaScript Component Libraries: Benefits, Implementation Strategies, and Commercialization Modelsieeexplore.ieee.org前往参考资料 ↓在新标签页中打开

待考证置信度 0.50 · 核验于 2026-10-22

评价与局限

复用与定制的权衡

共享组件库把四重承诺捆绑在同一个构建产物里:可复用性(避免重复开发日期选择器等组件)、一致性(不同团队的按钮、表格、表单控件行为一致)、以及与之相伴的维护与治理义务;这种耦合意味着采用一个库不只是引入代码,也同时接受了它的默认约定与后续升级责任。1616从可复用到可再生:重新思考共享 UI 组件库infoq.cn前往参考资料 ↓在新标签页中打开

复用与定制之间存在直接的取舍:采用预构建组件库可以快速获得现成的数据表格、模态框、日期选择器和表单字段,很多间距、排版与交互行为已被预先决定;而工具类优先的样式方案则把时间花在样式与布局决策上,不必与库的默认约定对抗,但需要团队自行沉淀可复用的组件片段。160160Tailwind CSS 与 UI 组件库:谁能更快交付 CRUD 屏幕? | AppMasterappmaster.io前往参考资料 ↓在新标签页中打开

衡量组件库在复用与定制上的真实成本,不能只看首次搭建时间,还要看变更时间(在不破坏样式的前提下调整布局与组件)、修复时间(加载状态、校验、键盘可用性等 UI 边缘情况)和审批时间(利益相关者停止在间距与一致性上反复评论);定制需求越多,后三项成本越容易抵消复用带来的初期收益。160160Tailwind CSS 与 UI 组件库:谁能更快交付 CRUD 屏幕? | AppMasterappmaster.io前往参考资料 ↓在新标签页中打开

组件库的形态正从简单的、可直接引入的 CSS 框架,演化为高度可定制、可复制粘贴的构建块,让开发者对样式与结构拥有完全控制权;这一演化本身就是对「复用优先还是定制优先」这一张力的产品化回应——把源码交给使用者,以放弃集中升级能力换取定制自由度。159159The Ever-Evolving Space of Design Component Librariesentwickler.de前往参考资料 ↓在新标签页中打开

有十年共享 UI 实践经验的团队提出,当 AI 能在短时间内生成带样式且基本符合无障碍标准的组件时,为全公司维护一套标准组件代码的价值已大不如前;值得集中管理的应转向设计系统、设计 token、设计规范与测试,而非已发布的组件实现。这实质上是主张把「复用」的粒度从组件代码上移到规范与 token,从而缓解复用与定制之间的冲突。1616从可复用到可再生:重新思考共享 UI 组件库infoq.cn前往参考资料 ↓在新标签页中打开

对立说法另一种立场认为,第三方组件库的价值恰恰在于开箱即用的设计系统与已被决定好的间距、排版和交互行为,小团队发布内部工具、管理面板或客户门户时,直接采用预构建组件并遵守其规则仍是更快、更一致的路径,而非把重心移出组件代码。160160Tailwind CSS 与 UI 组件库:谁能更快交付 CRUD 屏幕? | AppMasterappmaster.io前往参考资料 ↓在新标签页中打开

存在争议置信度 0.60 · 核验于 2026-10-22

在选型决策上,团队面对的核心问题被表述为「采用第三方库还是自建」:第三方库自带设计系统、上手快但受其约定约束,自建则控制力强但需自行承担一致性维护与长期演进成本;这一权衡没有普适答案,取决于项目类型、团队规模与界面需要演进的时长。159159The Ever-Evolving Space of Design Component Librariesentwickler.de前往参考资料 ↓在新标签页中打开|160160Tailwind CSS 与 UI 组件库:谁能更快交付 CRUD 屏幕? | AppMasterappmaster.io前往参考资料 ↓在新标签页中打开

维护与版本演进成本

组件库的维护成本并不止于组件本身:真正长期消耗工程时间的是组件之下的基础设施——设计令牌(design token)的流水线、治理机制、采用度数据以及面向 AI 代理的上下文供给。161161The Hidden Maintenance Cost of a DIY Design Systemsupernova.io前往参考资料 ↓在新标签页中打开

业界常把「自建组件库」与「长期运营设计系统」混为一谈:前者是一次性项目,后者是持续运营,而自建与采购的比价通常只给前者定价,导致维护成本在决策阶段被系统性低估。161161The Hidden Maintenance Cost of a DIY Design Systemsupernova.io前往参考资料 ↓在新标签页中打开

组件脚手架、令牌文件、文档站点和初步的无障碍支持,其搭建门槛已显著下降——过去需要一个季度的工作量,如今借助代码生成代理与有经验的工程师可在半天内完成初版;这意味着组件库的「建」越来越便宜,成本重心进一步向「养」转移。161161The Hidden Maintenance Cost of a DIY Design Systemsupernova.io前往参考资料 ↓在新标签页中打开

版本演进成本的一个具体来源是跨版本迁移:组件库的破坏性变更(API 改名、属性语义调整、样式变量重命名)会向下游所有使用方传导,使用方越多、耦合越深,单次大版本升级的协调成本越高。161161The Hidden Maintenance Cost of a DIY Design Systemsupernova.io前往参考资料 ↓在新标签页中打开

待考证置信度 0.50 · 核验于 2026-10-22

组件库的维护负担具有规模不经济的一面:组件数量、主题数量与目标终端数量的乘积决定需要验证的组合数,而每新增一个组合都会带来持续的回归测试与文档同步开销。161161The Hidden Maintenance Cost of a DIY Design Systemsupernova.io前往参考资料 ↓在新标签页中打开

待考证置信度 0.45 · 核验于 2026-10-22

参考来源

  1. 1文档 Work with component libraries - Training · Learn Microsoft · 2024-12-02 · 核验于 2026-10-22
  2. 2报道 Varlet UI-Material Design风格Vue 3框架移动端组件库 · 腾讯云开发者社区 · 2025-06-19 · 核验于 2026-10-22
  3. 3代码库 sw-uni-materiel · npm · 2026-01-03 · 核验于 2026-10-22
  4. 4文档 组件库目录结构相关专利说明书 · CN113553035A · 核验于 2026-10-22
  5. 5代码库 ivy-design-wc:使用 vue 框架开发的 Web Components 组件库 · GitHub · 2025-10-08 · 核验于 2026-10-22
  6. 6代码库 gvs-component · npm · 2025-07-02 · 核验于 2026-10-22
  7. 7文档 Web Components · MDN Web Docs · 2024-12-01 · 核验于 2026-10-22
  8. 8标准 Custom elements · HTML Living Standard, WHATWG · 2025-01-01 · 核验于 2026-10-22
  9. 9文档 CustomElementRegistry · MDN Web Docs · 2024-11-01 · 核验于 2026-10-22
  10. 10文档 Components Basics · Vue.js Documentation · 2024-12-01 · 核验于 2026-10-22
  11. 11文档 Component Story Format (CSF) · Storybook Documentation · 2024-11-01 · 核验于 2026-10-22
  12. 12代码库 Custom Elements Manifest · custom-elements-manifest · 2024-10-01 · 核验于 2026-10-22
  13. 13文档 CN118897675A - 组件库构建及调用方法、装置、设备及存储介质 - Google Patents · Google Patents · 2024-09-01 · 核验于 2026-10-22
  14. 14文档 组件化设计思维 FineReport帮助文档|报表开发|报表使用|学习教程 · FanRuan · 2021-05-08 · 核验于 2026-10-22
  15. 15文档 浏览所有课程、学习路径和模块 - Training · Learn Microsoft · 2025-07-01 · 核验于 2026-10-22
  16. 16文档 从可复用到可再生:重新思考共享 UI 组件库 · InfoQ.cn · 2026-10-12 · 核验于 2026-10-22
  17. 17文档 B端大仓文档 · FS.com · 2025-05-14 · 核验于 2026-10-22
  18. 18代码库 Ant Design 组件库 GitHub 仓库 · ant-design/ant-design · 2024-01-01 · 核验于 2026-10-22
  19. 19代码库 Element Plus 组件库 GitHub 仓库 · element-plus/element-plus · 2024-01-01 · 核验于 2026-10-22
  20. 20文档 Storybook 官方文档 · Storybook · 2024-01-01 · 核验于 2026-10-22
  21. 21文档 Ant Design 组件文档 · Ant Design · 2024-01-01 · 核验于 2026-10-22
  22. 22文档 Material UI Documentation · MUI · 2024-01-01 · 核验于 2026-10-22
  23. 23文档 Rollup Documentation: Tree-shaking · Rollup · 2024-01-01 · 核验于 2026-10-22
  24. 24文档 TypeScript Documentation: Publishing Declaration Files · Microsoft · 2024-01-01 · 核验于 2026-10-22
  25. 25文档 Element Plus 快速开始 · Element Plus · 2024-01-01 · 核验于 2026-10-22
  26. 26代码库 DefinitelyTyped GitHub Repository · DefinitelyTyped · 2024-01-01 · 核验于 2026-10-22
  27. 27文档 CSS Variables (Custom Properties) - MDN · MDN Web Docs · 2024-01-01 · 核验于 2026-10-22
  28. 28标准 Semantic Versioning 2.0.0 · SemVer · 2024-01-01 · 核验于 2026-10-22
  29. 29文档 npm Documentation: About semantic versioning · npm · 2024-01-01 · 核验于 2026-10-22
  30. 30文档 Docusaurus Documentation · Meta · 2024-01-01 · 核验于 2026-10-22
  31. 31文档 Webpack Documentation: Tree Shaking · Webpack · 2024-01-01 · 核验于 2026-10-22
  32. 32标准 Web Content Accessibility Guidelines (WCAG) 2.2 · W3C · 2023-10-05 · 核验于 2026-10-22
  33. 33文档 Testing · Storybook 官方文档 · 2024-11-01 · 核验于 2026-10-22
  34. 34文档 Visual regression testing · Playwright 官方文档 · 2024-10-01 · 核验于 2026-10-22
  35. 35文档 toHaveScreenshot · Playwright 官方文档 · 2024-10-01 · 核验于 2026-10-22
  36. 36文档 Publishing a package · npm Docs · 2024-06-01 · 核验于 2026-10-22
  37. 37文档 Library Mode · Vite 官方文档 · 2024-09-01 · 核验于 2026-10-22
  38. 38文档 PostCSS · PostCSS 官方文档 · 2024-05-01 · 核验于 2026-10-22
  39. 39代码库 Changesets · Changesets GitHub 仓库 · 2024-08-01 · 核验于 2026-10-22
  40. 40文档 Using a matrix for your jobs · GitHub Docs · 2024-07-01 · 核验于 2026-10-22
  41. 41文档 Node.js Packages: exports field · Node.js 官方文档 · 2024-10-01 · 核验于 2026-10-22
  42. 42文档 npm Docs: About packages and modules · npm, Inc. · 2024-01-01 · 核验于 2026-10-22
  43. 43文档 npm Docs: Downloading and installing packages locally · npm, Inc. · 2024-01-01 · 核验于 2026-10-22
  44. 44文档 npm Docs: Scope · npm, Inc. · 2024-01-01 · 核验于 2026-10-22
  45. 45文档 npm Docs: package.json · npm, Inc. · 2024-01-01 · 核验于 2026-10-22
  46. 46文档 Verdaccio: A lightweight private npm proxy registry · Verdaccio · 2024-01-01 · 核验于 2026-10-22
  47. 47文档 Sonatype Nexus Repository: npm Registry · Sonatype · 2024-01-01 · 核验于 2026-10-22
  48. 48文档 npm Docs: package-lock.json · npm, Inc. · 2024-01-01 · 核验于 2026-10-22
  49. 49文档 pnpm Documentation: Lockfile · pnpm · 2024-01-01 · 核验于 2026-10-22
  50. 50文档 Ant Design: Getting Started · Ant Design · 2024-01-01 · 核验于 2026-10-22
  51. 51文档 GitHub Docs: About Dependabot security updates · GitHub · 2024-01-01 · 核验于 2026-10-22
  52. 52文档 MDN Web Docs:JavaScript modules · MDN · 2024-01-01 · 核验于 2026-10-22
  53. 53文档 Vite 官方文档:依赖预构建与生产构建 · Vite · 2024-01-01 · 核验于 2026-10-22
  54. 54代码库 babel-plugin-import · npm · 2024-01-01 · 核验于 2026-10-22
  55. 55文档 Ant Design 官方文档:按需加载 · Ant Design · 2024-01-01 · 核验于 2026-10-22
  56. 56代码库 unplugin-vue-components · npm · 2024-01-01 · 核验于 2026-10-22
  57. 57文档 前端组件库——shadcn/ui知识点大全(一)-阿里云开发者社区 · 阿里云开发者社区 · 2026-04-19 · 核验于 2026-10-22
  58. 58文档 Ant Design of React · Ant Design 官方文档 · 2024-01-01 · 核验于 2026-10-22
  59. 59文档 Vuetify: Material Design Framework for Vue.js · Vuetify 官方文档 · 2024-01-01 · 核验于 2026-10-22
  60. 60文档 Element Plus: A Vue 3 UI library · Element Plus 官方文档 · 2024-01-01 · 核验于 2026-10-22
  61. 61文档 Angular Material: Material Design components for Angular · Angular Material 官方文档 · 2024-01-01 · 核验于 2026-10-22
  62. 62文档 NG-ZORRO: An enterprise-class Angular UI component library · NG-ZORRO 官方文档 · 2024-01-01 · 核验于 2026-10-22
  63. 63文档 MUI: Styling solutions · MUI 官方文档 · 2024-01-01 · 核验于 2026-10-22
  64. 64文档 Vue.js Documentation: SFC CSS Features · Vue.js 官方文档 · 2024-01-01 · 核验于 2026-10-22
  65. 65文档 Angular Documentation: Component styles · Angular 官方文档 · 2024-01-01 · 核验于 2026-10-22
  66. 66文档 MUI: Server-side rendering with Next.js · MUI 官方文档 · 2024-01-01 · 核验于 2026-10-22
  67. 67文档 Shoelace: A forward-thinking library of web components · Shoelace 官方文档 · 2024-01-01 · 核验于 2026-10-22
  68. 68文档 Lit: Simple. Fast. Web Components. · Lit 官方文档 · 2024-01-01 · 核验于 2026-10-22
  69. 69文档 Radix UI: Unstyled, accessible components for building high-quality design systems · Radix UI 官方文档 · 2024-01-01 · 核验于 2026-10-22
  70. 70文档 shadcn/ui: Beautifully designed components that you can copy and paste into your apps · shadcn/ui 官方文档 · 2024-01-01 · 核验于 2026-10-22
  71. 71文档 Using shadow DOM - MDN Web Docs · MDN Web Docs (Mozilla) · 2024-12-01 · 核验于 2026-10-22
  72. 72文档 Custom elements - MDN Web Docs · MDN Web Docs (Mozilla) · 2024-12-01 · 核验于 2026-10-22
  73. 73文档 Web Components - React · React 官方文档 · 2024-12-01 · 核验于 2026-10-22
  74. 74报道 React 19 发布说明 · React 官方博客 · 2024-12-05 · 核验于 2026-10-22
  75. 75文档 ::part() - MDN Web Docs · MDN Web Docs (Mozilla) · 2024-12-01 · 核验于 2026-10-22
  76. 76文档 Declarative Shadow DOM - web.dev · Google web.dev · 2023-10-01 · 核验于 2026-10-22
  77. 77文档 Spectrum Web Components · Adobe · 2024-01-01 · 核验于 2026-10-22
  78. 78文档 FAST - The adaptive interface system for modern web experiences · Microsoft · 2024-01-01 · 核验于 2026-10-22
  79. 79文档 Taro 官方文档:多端开发 · Taro / 京东 · 2024-01-01 · 核验于 2026-10-22
  80. 80文档 uni-app 官方文档:跨平台开发 · DCloud · 2024-01-01 · 核验于 2026-10-22
  81. 81文档 Taro 组件库文档 · Taro / 京东 · 2024-01-01 · 核验于 2026-10-22
  82. 82代码库 Taro GitHub 仓库 · NervJS · 2024-01-01 · 核验于 2026-10-22
  83. 83文档 uni-app 组件文档 · DCloud · 2024-01-01 · 核验于 2026-10-22
  84. 84文档 uni-ui 介绍 | uni-app官网 · Uni-app · 2026-10-20 · 核验于 2026-10-22
  85. 85文档 Flutter 官方文档:Introduction to widgets · Google · 2024-01-01 · 核验于 2026-10-22
  86. 86代码库 Flutter GitHub 仓库 · flutter · 2024-01-01 · 核验于 2026-10-22
  87. 87文档 React Native 官方文档:核心组件与原生组件 · Meta · 2024-01-01 · 核验于 2026-10-22
  88. 88文档 React Native 新架构(Fabric)文档 · Meta · 2024-01-01 · 核验于 2026-10-22
  89. 89代码库 Kraken GitHub 仓库 · openkraken · 2024-01-01 · 核验于 2026-10-22
  90. 90文档 Element Plus - Custom Theme · Element Plus · 2024-01-01 · 核验于 2026-10-22
  91. 91文档 Ant Design - Customize Theme · Ant Design · 2024-01-01 · 核验于 2026-10-22
  92. 92文档 Element Plus - Quick Start · Element Plus · 2024-01-01 · 核验于 2026-10-22
  93. 93文档 Ant Design - ConfigProvider · Ant Design · 2024-01-01 · 核验于 2026-10-22
  94. 94文档 Vuetify - Theme · Vuetify · 2024-01-01 · 核验于 2026-10-22
  95. 95文档 Design Systems: A practical guide to creating design languages for digital products · Smashing Magazine · 2017-01-01 · 核验于 2026-10-22
  96. 96文档 Material Design - Components · Google · 2024-01-01 · 核验于 2026-10-22
  97. 97文档 Design system · Wikipedia · 2024-06-01 · 核验于 2026-10-22
  98. 98标准 Design Tokens · Design Tokens Community Group, W3C · 2023-01-01 · 核验于 2026-10-22
  99. 99文档 What are design tokens? · CSS-Tricks · 2021-04-05 · 核验于 2026-10-22
  100. 100文档 Lightning Design System · Salesforce · 2024-01-01 · 核验于 2026-10-22
  101. 101文档 Material Design · Google · 2024-01-01 · 核验于 2026-10-22
  102. 102文档 Material Symbols · Google Fonts · 2024-01-01 · 核验于 2026-10-22
  103. 103文档 Design tokens: The bridge between design and code · UX Collective · 2022-01-01 · 核验于 2026-10-22
  104. 104文档 Create and use components · Figma Help Center · 2024-01-01 · 核验于 2026-10-22
  105. 105文档 Maintaining a design system · Design Systems Repo · 2023-01-01 · 核验于 2026-10-22
  106. 106文档 The value of design systems · InVision · 2020-01-01 · 核验于 2026-10-22
  107. 107文档 Design Systems Handbook · DesignBetter by InVision · 2019-01-01 · 核验于 2026-10-22
  108. 108文档 Why design systems fail · UX Collective · 2021-01-01 · 核验于 2026-10-22
  109. 109文档 "打通设计与研发效率最后一公里”-云事业部前端团队 D2C/C2D落地经验分享-京东云开发者社区 · 京东云-开发者社区 · 2025-03-10 · 核验于 2026-10-22
  110. 110文档 Design and code - an ever evolving challenge - Anima Blog · Anima App · 2024-11-26 · 核验于 2026-10-22
  111. 111代码库 component-library-bidirectional-constraint-methodology.md · GitHub · 2025-07-23 · 核验于 2026-10-22
  112. 112文档 Low-code development platform · Wikipedia · 2024-01-15 · 核验于 2026-10-22
  113. 113文档 What is a low-code platform? · Microsoft Power Apps Documentation · 2024-03-01 · 核验于 2026-10-22
  114. 114文档 Component library · Wikipedia · 2023-11-20 · 核验于 2026-10-22
  115. 115论文 Low-Code Platforms: A Survey · arXiv · 2021-09-02 · 核验于 2026-10-22
  116. 116文档 Gartner Glossary: Low-Code Application Platform · Gartner · 2023-06-10 · 核验于 2026-10-22
  117. 117文档 Custom components overview · Microsoft Power Apps Documentation · 2024-02-15 · 核验于 2026-10-22
  118. 118报道 The Forrester Wave: Low-Code Development Platforms · Forrester · 2023-03-01 · 核验于 2026-10-22
  119. 119报道 低代码平台中的组件物料与资产复用 · InfoQ 中文 · 2022-09-15 · 核验于 2026-10-22
  120. 120文档 Lightning Components and Packages Developer Guide · Salesforce · 2024-01-10 · 核验于 2026-10-22
  121. 121文档 Appsmith Documentation: Building reusable UI · Appsmith · 2024-03-01 · 核验于 2026-10-22
  122. 122文档 前端组件库 ——OpenTiny (TinyVue) 知识点大全(二)-阿里云开发者社区 · 阿里云开发者社区 · 2026-04-29 · 核验于 2026-10-22
  123. 123文档 零云®uview-plus3.0重磅发布,全面的Vue3鸿蒙跨端移动组件库,组件丰富维护更新稳定。 - DCloud 插件市场 · DCloud 插件市场 · 2026-09-27 · 核验于 2026-10-22
  124. 124代码库 GitHub - llscw7/flyer-ui: uni-app-x ui组件库 · GitHub · GitHub · 2025-08-29 · 核验于 2026-10-22
  125. 125文档 大厂开源项目,真的太爽啦,字节跳动出品!这个设计系统开源神器,让你的产品颜值与效率齐飞 · 阿里云开发者社区 · 2025-02-28 · 核验于 2026-10-22
  126. 126文档 Inspira UI 不写一行 CSS 也能打造超好看界面 | iTrust SSL · iTrust SSL · 2025-05-02 · 核验于 2026-10-22
  127. 127代码库 lightning-base-components · npm / Salesforce · 2024-01-01 · 核验于 2026-10-22
  128. 128文档 SAPUI5 Documentation · SAP · 2024-01-01 · 核验于 2026-10-22
  129. 129文档 OpenUI5 · OpenUI5 / SAP · 2024-01-01 · 核验于 2026-10-22
  130. 130文档 Material Design Components · Google · 2024-01-01 · 核验于 2026-10-22
  131. 131代码库 Material Components for Android · Google / GitHub · 2024-01-01 · 核验于 2026-10-22
  132. 132代码库 Fluent UI · Microsoft / GitHub · 2024-01-01 · 核验于 2026-10-22
  133. 133文档 Ant Design - 企业级 UI 设计语言和 React 组件库 · Ant Design 官方文档 · 2024-01-01 · 核验于 2026-10-22
  134. 134文档 Ant Design Pro - 开箱即用的中台前端/设计解决方案 · Ant Design Pro 官方文档 · 2024-01-01 · 核验于 2026-10-22
  135. 135文档 Element Plus - 基于 Vue 3 的桌面端组件库 · Element Plus 官方文档 · 2024-01-01 · 核验于 2026-10-22
  136. 136文档 Vant - 轻量、可靠的移动端组件库 · Vant 官方文档 · 2024-01-01 · 核验于 2026-10-22
  137. 137文档 Taro - 多端统一开发框架 · Taro 官方文档 · 2024-01-01 · 核验于 2026-10-22
  138. 138文档 NutUI - 京东风格的轻量级移动端组件库 · NutUI 官方文档 · 2024-01-01 · 核验于 2026-10-22
  139. 139文档 Arco Design - 企业级设计系统 · Arco Design 官方文档 · 2024-01-01 · 核验于 2026-10-22
  140. 140文档 Semi Design - 现代企业级应用设计系统 · Semi Design 官方文档 · 2024-01-01 · 核验于 2026-10-22
  141. 141文档 Fluent UI - Microsoft 设计系统与组件库 · Microsoft Fluent UI 官方文档 · 2024-01-01 · 核验于 2026-10-22
  142. 142文档 MUI - React 组件库,实现 Material Design · MUI 官方文档 · 2024-01-01 · 核验于 2026-10-22
  143. 143文档 Bootstrap - 最流行的前端框架 · Bootstrap 官方文档 · 2024-01-01 · 核验于 2026-10-22
  144. 144文档 Apache ECharts - 开源可视化图表库 · Apache ECharts 官方文档 · 2024-01-01 · 核验于 2026-10-22
  145. 145文档 Leaflet - 开源交互地图库 · Leaflet 官方文档 · 2024-01-01 · 核验于 2026-10-22
  146. 146文档 Mapbox GL JS - 基于 WebGL 的矢量地图库 · Mapbox 官方文档 · 2024-01-01 · 核验于 2026-10-22
  147. 147文档 Draft.js - 富文本编辑器框架 · Draft.js 官方文档 · 2024-01-01 · 核验于 2026-10-22
  148. 148文档 Slate - 富文本编辑框架 · Slate 官方文档 · 2024-01-01 · 核验于 2026-10-22
  149. 149文档 TipTap - 无头富文本编辑器 · TipTap 官方文档 · 2024-01-01 · 核验于 2026-10-22
  150. 150文档 AG Grid - 数据网格组件库 · AG Grid 官方文档 · 2024-01-01 · 核验于 2026-10-22
  151. 151文档 React Hook Form - 高性能表单库 · React Hook Form 官方文档 · 2024-01-01 · 核验于 2026-10-22
  152. 152文档 Formik - React 表单库 · Formik 官方文档 · 2024-01-01 · 核验于 2026-10-22
  153. 153文档 dnd-kit - 现代化 React 拖拽工具库 · dnd-kit 官方文档 · 2024-01-01 · 核验于 2026-10-22
  154. 154文档 React DnD - React 拖拽库 · React DnD 官方文档 · 2024-01-01 · 核验于 2026-10-22
  155. 155文档 WeUI - 微信原生视觉体验基础样式库 · WeUI 官方文档 · 2024-01-01 · 核验于 2026-10-22
  156. 156文档 Evolution of Component Libraries | Vercel Academy · FUNCTION_INVOCATION_FAILED · 2025-01-01 · 核验于 2026-10-22
  157. 157文档 Knowledge — Design-systems tooling reference (2026) · GitHub · 2026-07-21 · 核验于 2026-10-22
  158. 158文档 Framework-Agnostic JavaScript Component Libraries: Benefits, Implementation Strategies, and Commercialization Models · IEEE Xplore · 2025-01-26 · 核验于 2026-10-22
  159. 159文档 The Ever-Evolving Space of Design Component Libraries · Entwickler · 2025-08-24 · 核验于 2026-10-22
  160. 160文档 Tailwind CSS 与 UI 组件库:谁能更快交付 CRUD 屏幕? | AppMaster · AppMaster · 2025-08-04 · 核验于 2026-10-22
  161. 161文档 The Hidden Maintenance Cost of a DIY Design System · Supernova.io · 2026-09-17 · 核验于 2026-10-22