Skip to main content
ExodeUI

EXODEUI DESKTOP

A little space for good ideas.

Choose your platform to get the official ExodeUI installer.

Looking for Intel Mac or other builds? Explore the web studio or check all download options.

Prefer the browser? Try for free in your browser →
设计系统8 分钟阅读·Updated 2026 年 10 月·ExodeUI 团队

在不破坏产品团队的情况下弃用设计系统组件

如何在大型应用程序中推出突破性的设计系统更改:使用语义版本控制和使用跟踪来宣布、弃用、使用代码模型迁移和删除。

直接总结和定义

核心要点

通过四个步骤淘汰组件:宣布更改并说明原因和替换,将旧组件标记为在次要版本中弃用并带有明确的警告,帮助团队使用指南和自动代码修改进行迁移,并仅在下一个主要版本中将其删除。跟踪每一步仍有多少屏幕使用它,并且在使用率接近零之前不要删除它。

为什么弃用会出错

当设计系统的变更让产品团队感到惊讶时,就会失败:组件在更新中消失,构建中断,团队固定旧版本并停止升级。一旦发生这种情况,系统就会失去其主要优势,即一致性,因为产品的不同部分会转向不同的版本。

一个四步过程

语义版本控制提供了一个简单的契约:不兼容的更改出现在主要版本中,当您弃用 API 的一部分时,您应该更新文档并发布一个包含弃用内容的次要版本,然后再将其删除。

  • 宣布:解释原因,显示替代方案,给出时间表。
  • 弃用:在文档和代码中标记它,并使用链接到指南的控制台或 lint 警告。
  • 迁移:提供书面指南,对于代码,提供自动更新用法的代码模块。
  • 删除:在下一个主要版本中,一旦使用量接近零。
宣布、弃用、迁移和删除设计系统组件退役步骤的时间表
在次要版本中宣布、弃用、使用工具迁移、在下一个主要版本中删除。

自动化迁移

Codemod 是跨代码库重写代码的脚本。 jscodeshift 等工具可以同时在多个 JavaScript 或 TypeScript 文件上运行 codemod,因此可以在几分钟而不是几周内应用道具重命名或组件交换。将它们与标记剩余用法的 lint 规则配对。

措施采用情况

在不知道谁仍在使用组件的情况下,您无法计划删除。跟踪代码(导入、lint 警告)和设计文件(设计工具中的库分析)中的使用情况。发布数字,以便团队可以看到进展,并直接帮助最后几个团队,而不是强制截止日期。

不要忘记设计方面

也弃用设计库中的组件:使用“Deprecated”前缀重命名它,链接到替换项,并停止它出现在搜索中。否则,设计师会继续在新工作中使用它,迁移永远不会结束。动作和交互行为应该成为变更注释的一部分,因为即使看起来相同,但移动方式不同的替代品也会让人感觉破碎。

要记住的关键 Principle

  • 宣布、弃用、迁移、删除:永远不要直接跳到删除
  • 在次要版本中弃用;在主要版本中删除
  • 使用 codemods 和 lint 规则自动迁移
  • 跟踪代码和设计文件中的使用情况
  • 在发行说明中包含动作和交互更改

常见问题解答

来源

  1. Semantic Versioning 2.0.0 — semver.org
  2. jscodeshift: a JavaScript codemod toolkit — GitHub(元)

相关指南和示例

具有稳定合约的组件

了解 ExodeUI 组件如何公开输入和事件,以便在不破坏应用程序代码的情况下更改视觉效果和动作。

打开示例
免费试用