返回博客

Storybook 7.1

Storybook 7.1 现已发布!新增应用内入门引导、零配置样式支持、TypeScript 代码片段等功能。

loading
Michael Shilman
@mshilman
最后更新

Storybook 是 UI 组件开发、文档和测试的行业标准工作台。Twitter、GitHub、BBC 和 The New York Times 等公司的团队都在使用它。

自 4 月份发布 Storybook 7.0 以来,我们计划发布更频繁、更小的版本。这将有助于 Storybook 与前端生态系统的变化保持同步,同时简化用户的升级过程。

今天,我们非常激动地为您带来这些版本中的第一个:Storybook 7.1,其中包含大量改进。

  • 🏄‍♀️ 应用内入门指南,帮助您学习 Storybook
  • 💅 零配置样式支持,适用于 Tailwind、Material UI、styled-components 和 Emotion
  • 🗃️ API 参考文档
  • TypeScript 优先的代码片段
  • 📗 Vue 3 源码片段和响应式改进
  • 📇 文档目录
  • 🎨 Figma 设计插件官方支持
  • 💯 数百项其他修复和改进

让我们深入了解细节,并分享更多关于 Storybook 的未来方向。

应用内入门指南

Storybook 支持 React、Vue、Angular、Web Components、Svelte、Webpack 和 Vite,以及超过 400 个插件的生态系统。这使其成为迄今为止最强大的组件工作台。

然而,这种强大也付出了代价:Storybook 在新项目中并不总是最容易设置的。

在 Storybook 7.1 中,我们通过引入 面向新用户的入门流程 来简化这个学习曲线。它将引导您了解 Storybook,指导您编写第一个 Story,并为您提供有关如何自定义项目的文档!

A demonstration of the onboarding flow within Storybook 7.1

目前,入门流程将适用于所有新的 React 项目。我们将在未来的版本中将其扩展到覆盖所有主流框架。

了解更多关于 Storybook 新的应用内入门指南

新用户应用内引导
3 分钟写出你的第一个 Story

零配置样式支持

Storybook 7.1 为 Storybook 的 Styling addon 带来了额外的强大功能,现在可以自动为 Tailwind、Material UI、Emotion 和 styled-components 配置 Storybook!

A demonstration of the styling addon automatically configuring Storybook for Tailwind

我们将在未来的版本中将更多库添加到此列表中。

了解更多关于 Storybook 7.1 中的零配置样式支持

对 Tailwind、MUI、styled-components 和 Emotion 的零配置支持
对 JavaScript 最受欢迎的样式库提供新的零配置支持

API 参考文档

今年早些时候,当我们向 Storybook 用户进行调查时,最常被要求改进的是 API 文档。您提出了要求,我们已交付!

在 Storybook 的文档中,我们为 配置文件ArgTypesStorybook Docs 中的 Doc blocks 引入了 API 参考。我们还将 Storybook 的文档设置为 TypeScript 优先,因为 TS 占所有 Storybook 项目的 80% 以上。

了解更多关于 Storybook 7.1 文档改进的信息

新的API参考、TypeScript代码片段和文档DX
我们正使学习Storybook变得前所未有的容易

Vue 3 源码片段和响应式

Vue 是 Storybook 的第二大流行渲染器,每周有近 50 万次 npm 下载。尽管 Vue 很受欢迎,但由于维护者较少,其支持落后于其他流行框架。

在 7.1 版本中,我们迎来了两位新的 Vue 维护者:Chakir QatabKasper Peulen,他们极大地改进了 Vue 的体验。多亏了他们,Storybook 7.1 包含了对 Vue 3 源码片段和更新控件时的响应式渲染的关键 bug 修复。

A demo of Vue 3 source snippets in Storybook 7.1

UI 文档的目录

通过 Storybook 7.0 Docs,我们对 UI 文档功能进行了全面的检修。它为大多数用户带来了巨大改进——极大地优化了信息架构、MDX 处理Doc Blocks 等。

然而,7.0 的 Docs 对重度 Docs 用户来说,也包含了一个特别具有颠覆性的变化。Storybook 7.0 不再将 Docs 显示在选项卡中,而是将其显示为侧边栏菜单项。由于不再有 Docs 选项卡,点击侧边栏中的 Story 会直接进入 Story。这意味着不再可能通过点击侧边栏在大型 Docs 页面中滚动。

为了解决这个问题,我们添加了一个可选的目录,它浮动在页面的右侧。当与隐藏侧边栏中的 Story 的 --docs CLI 标志结合使用时,您可以实现类似于 Storybook 6.0 中“经典”文档的、面向文档的用户体验。

Table of contents for Docs in Storybook's UI

要全局启用此功能,可以在 .storybook/preview.js 文件中设置 docs.toc 参数。

export default {
  parameters: {
    docs: { toc: { /* options */ } }
  }
};

有关选项的完整列表,请参阅我们的文档

Figma 设计插件官方支持

作为 7.1 版本的一部分,我们已将流行的 Designs addon 升级到兼容 Storybook 7.0。我们还将其纳入 Storybook 核心,以实现更紧密的集成。如果您当前使用 storybook-addon-designs,请升级到 @storybook/addon-designs 以获取最新功能。

Storybook's Design addon

非常感谢创建该插件并继续帮助维护它的 Shota Fuji

Figma 合作伙伴关系

Storybook 集成了多种设计工具。其中,Figma 是我们社区中最受欢迎的。因此,我们很高兴成为 Figma 在开发者模式 (Dev Mode) 方面的官方合作伙伴,这是一种用于简化开发者交付的新工作流程。

Storybook starring in the keynote at Config 2023

了解更多关于将 Storybook 集成到 Figma,以及将 Figma 集成到 Storybook

用于 Storybook 的 Figma 插件
集成设计和代码,加速您的团队

数百项改进

Storybook 的每个版本都包含数百项细微的改进。

Storybook 7.1 包含多项显著的性能改进。

  • Esbuild 不再在 node_modules 上运行,从而节省了数秒的开发启动时间。#23018
  • 您现在可以用 SWC 替换 Babel,以实现更快的开发和生产构建。#22075
  • 您现在可以使用 SWC 而不是 terser 进行代码最小化,以加快生产构建速度。#22843
  • 我们对 react-docgen-typescript 进行了惰性加载,以加快 React TS 的开发启动速度。#23019

我们还已将大多数 Storybook 包转换为严格模式 TypeScript,以帮助捕获 bug 并提高可维护性。这项工作由Kasper Peulen牵头,社区贡献者包括Jen ChanMartin KuriackaEfren AragonTaehyeon KimFredrick UgonnaKyle TsangKTMaría SimóEDuToit

有关完整更改的更多信息,请参阅7.1 预发布更新日志

通往 8.0 的道路

Storybook 7.1 是我们通往 8.0 的第一站。我们将继续改进启动速度、安装大小/占用空间和稳定性。

8.0 中一个重要的破坏性更改将是移除旧的 storiesOf API,这是 2017-2019 年编写 Story 的方式。如果您是 storiesOf 用户,请查看我们的 RFC,以了解这对您意味着什么。

升级到 Storybook 7.1

要将您的 Storybook 升级到 7.1,请运行

npx storybook@latest upgrade

有关从早于 Storybook 7 的版本升级的指导,请查看 Storybook 7 迁移指南

或者,对于全新安装,可以使用以下命令将 Storybook引导到现有应用中:

npx storybook@latest init

参与进来

专业的UI开发人员每天都依赖Storybook。当您采用Storybook时,您将获得一套工具、强大的插件和开箱即用的集成,从而使开发速度更快。

该项目由 2023 年及以后的开源贡献者维护,并由一个指导委员会指导。如果您有兴趣贡献,请在GitHub上查看 Storybook,创建一个 issue,或提交一个 pull request。在Open Collective上捐赠。在Discord上与我们交流。在TwitterLinkedIn上关注 Storybook 的最新消息,或注册我们的邮件列表

鸣谢

非常感谢所有为 Storybook 7.1 做出贡献的人!

核心团队

@cdedreuille @chakas3 @dannyhw @domyen @ianvs @jreinhold @joe-vaughan @jonniebigodes @integrayshaun @kasperpeulen @kylegach @MichaelArestad @ndelangen @shilman(我!)@tmeasday @valentinpalkovic @vanessayuenn @yannbf @winkerVSbecks

社区贡献者

@0916dhkim @1234tgk @adityakrmodak @amerlander @andarist @auctumnus @bashmish @benmccann @coliff @darleendenno @daves28 @dschungelabenteuer @dubbs @dxb-story @edutoit @efrenaragon96 @felixrizzolli @fezvrasta @filiptammergard @g-cappai @gitstart @gufah @hcvdhaar @hobbes7878 @honzahruby @idesigncode @jackw @jared-christensen @joaonunomota @joeycozza @joriswitteman @joshbolduc @jpzwarte @junghoe @kolife01 @kubijo @kuriacka @kyletsang @literalpie @liwn9527 @luk-z @manbearwiz @mandarini @mariasimo @mariocadenas @martinnabhan @mdornseif @medihack @michens @miily8310s @mvarendorff @notwoods @noviceguru @orangecms @pascalfiv @pruthvip15 @redbugz @roel-t @sheriffmoose @showrin @sitogi @sjwilczynski @smeagol74 @sookmax @specialdoom @syabro @taehyeon-envoi @thtliife @ubugnu @usrrname @webblocksapp @wise-introvert @ygkn @yilun-sun @youngboy @zachtball

加入 Storybook 邮件列表

获取最新消息、更新和发布信息

7,468开发者及更多

我们正在招聘!

加入 Storybook 和 Chromatic 团队。构建被数十万开发人员在生产中使用的工具。远程优先。

查看职位

热门帖子

隆重推出 Chromatic Visual Tests 插件

使用 Storybook 精确定位像素级的 UI 错误
loading
Dominic Nguyen

视觉测试插件进入私有 Alpha 测试阶段

立即注册参与,以及项目更新
loading
Dominic Nguyen

新用户应用内引导

3 分钟写出你的第一个 Story
loading
Joe Vaughan
加入社区
7,468开发者及更多
原因为什么选择 Storybook组件驱动的 UI
文档指南教程更新日志遥测
社区插件参与进来博客
展示探索项目组件词汇表
开源软件
Storybook - Storybook 中文

特别感谢 Netlify CircleCI