文档
Storybook 文档

升级 Storybook

前端生态系统是一个快速变化的地方。定期升级依赖项是生活的一部分,无论是升级框架、库、工具还是以上所有!Storybook 提供了一些资源来帮助缓解升级的痛苦。

升级脚本

最常见的升级是 Storybook 本身。 Storybook 版本 遵循 语义化版本控制。我们持续发布包含错误修复的补丁版本,每隔几个月发布包含新功能的次要版本,每年发布一次包含重大更改的主要版本。

为了帮助缓解保持 Storybook 更新的痛苦,我们提供了一个命令行脚本

npx storybook@latest upgrade

upgrade 命令将使用您指定的任何版本。例如

  • storybook@latest upgrade 将升级到最新版本
  • [email protected] upgrade 将升级到 7.6.10
  • storybook@7 upgrade 将升级到最新的 7.x.x 版本

运行命令后,脚本将

  • 将项目中所有 Storybook 包升级到指定的版本
  • 运行相关的 自动迁移,考虑您当前版本和指定版本之间的 重大更改

除了运行命令外,我们还建议查看 MIGRATION.md 文件,了解可能影响升级的相关更改和弃用日志的详细信息。

验证升级

为了帮助您验证升级是否已完成以及您的项目是否仍按预期工作,Storybook CLI 提供了 doctor 命令,允许您对项目进行健康检查,以查找升级后可能出现的常见问题,例如重复的依赖项、不兼容的插件或不匹配的版本。要执行健康检查,请使用您选择的包管理器运行以下命令

npx storybook@latest doctor

自动迁移脚本

Storybook 升级并非唯一需要考虑的事情:生态系统的变化也带来了挑战。例如,像 AngularNext.jsSvelte 这样知名的前端框架一直在对其生态系统进行重大更改,因此,即使您不升级 Storybook 版本,也可能需要相应地更新您的配置。这就是自动迁移的用途

npx storybook@latest automigrate

它运行一组标准的配置检查,解释哪些内容可能已过时,并提供自动修复的选项。它还会指向相关文档,以便您了解更多信息。它作为 storybook upgrade 命令的一部分自动运行,但如果您不想升级 Storybook,也可以单独使用它。

预发布版本

此外,Storybook 处于持续开发中,我们几乎每天都会发布预发布版本。预发布版本是尝试新功能的最佳方式,在它们普遍可用之前,我们会尽最大努力使它们保持稳定,尽管这并非总是可能的。

要升级到最新的预发布版本

npx storybook@next upgrade

upgrade 命令将使用您指定的任何版本。例如

  • storybook@next upgrade 将升级到最新的预发布版本
  • [email protected] upgrade 将升级到 8.0.0-beta.1
  • storybook@8 upgrade 将升级到最新的 8.x 版本

如果您想降级到稳定版本,请手动编辑 package.json 中的包版本号并重新安装。

Storybook 收集完全匿名的数据,以帮助我们改善用户体验。参与是可选的,如果您不想分享任何信息,可以 选择退出