安装 Storybook
使用 Storybook CLI 通过单个命令安装它。在您的项目根目录中运行此命令
npm create storybook@latest
安装特定版本
对于安装 Storybook 8.3 或更高版本,您可以使用带有特定版本的 create
命令
npm create storybook@8.3
要安装低于 8.3 版本的 Storybook,您必须使用 init
命令
npx storybook@8.2 init
对于任一命令,您可以指定 npm 标签(例如 latest
或 next
)或(部分)版本号。例如
-
storybook@latest init
将初始化最新版本 -
storybook@7.6.10 init
将初始化7.6.10
-
storybook@7 init
将初始化最新的7.x.x
版本
Storybook 将在其安装过程中查看您项目的依赖项,并为您提供最佳可用配置。
上面的命令将对您的本地环境进行以下更改
- 📦 安装所需的依赖项。
- 🛠 设置必要的脚本以运行和构建 Storybook。
- 🛠 添加默认的 Storybook 配置。
- 📝 添加一些样板 stories 以帮助您入门。
- 📡 设置遥测以帮助我们改进 Storybook。阅读更多关于它的信息 此处。
观看视频教程
运行设置向导
如果一切顺利,您应该会看到一个设置向导,它将帮助您开始使用 Storybook,向您介绍主要概念和功能,包括 UI 的组织方式、如何编写您的第一个 story 以及如何利用控件测试组件对各种输入的响应。
如果您跳过了向导,您可以随时通过将 ?path=/onboarding
查询参数添加到您的 Storybook 实例的 URL 再次运行它,前提是示例 stories 仍然可用。
启动 Storybook
Storybook 附带一个内置的开发服务器,其中包含项目开发所需的一切。根据您的系统配置,运行 storybook
命令将启动本地开发服务器,为您输出地址,并自动在新浏览器标签页中打开该地址,欢迎屏幕将在那里迎接您。
npm run storybook
Storybook 收集完全匿名的数据,以帮助我们改善用户体验。参与是可选的,如果您不想分享任何信息,可以选择退出。
这里有一些值得注意的项目
- 一组有用的链接,用于更深入的配置和您可以使用的自定义选项。
- 第二组链接供您扩展您的 Storybook 知识并参与不断发展的 Storybook 社区。
- 一些示例 stories 以帮助您入门。
故障排除
使用其他包管理器运行 Storybook
Storybook CLI 包括对行业流行的包管理器(例如,Yarn、npm 和 pnpm)的支持,当您初始化 Storybook 时,它会自动检测您正在使用的包管理器。但是,如果您想使用特定的包管理器作为默认管理器,请将 --package-manager
标志添加到安装命令。例如
npm create storybook@latest --package-manager=npm
CLI 未检测到我的框架
如果您正在使用自定义环境设置或需要手动设置 Storybook,您可以使用 --type
标志来指定您需要使用的框架。下面列出了支持的框架以及如何使用它们的示例
框架 | 类型 |
---|---|
Angular | angular |
Ember | ember |
HTML | html |
Next.js | nextjs |
Preact | preact |
Qwik | qwik |
React | react |
Server | server |
Solid | solid |
Svelte | svelte |
Vue 3 | vue3 |
Web Components | web_components |
npm create storybook@latest --type solid
Yarn Plug'n'Play (PnP) 对 Storybook 的支持
如果您在启用了 Plug'n'Play (PnP) 的新版 Yarn 上运行的项目中启用了 Storybook,您可能会注意到它会生成带有某些附加文件和文件夹的 node_modules
。这是一个已知限制,因为 Storybook 依赖于某些目录(例如,.cache
)来存储缓存文件和其他数据,以提高性能和更快的构建速度。您可以安全地忽略这些文件和文件夹,并调整您的 .gitignore
文件以将它们从您正在使用的版本控制中排除。
使用 Webpack 4 运行 Storybook
如果您之前在使用了 Webpack 4 的项目中安装了 Storybook,它将不再工作。这是因为 Storybook 现在默认使用 Webpack 5。要解决此问题,我们建议您将您的项目升级到 Webpack 5,然后运行以下命令将您的项目迁移到最新版本的 Storybook
npx storybook@latest automigrate
Storybook 在空目录中无法工作
默认情况下,Storybook 配置为检测您是在空目录还是现有项目中初始化它。但是,如果您尝试初始化 Storybook,在仅包含 package.json
文件的目录中选择基于 Vite 的框架(例如,React),您可能会遇到 Yarn Modern 的问题。这是由于 Yarn 处理对等依赖项的方式以及 Storybook 设置为与基于 Vite 的框架配合使用的方式,因为它需要安装 Vite 包。要解决此问题,您必须手动安装 Vite 并初始化 Storybook。
安装过程似乎不稳定且不断失败
如果您在安装过程中仍然遇到一些问题,我们鼓励您查看以下资源
- Storybook 的 React Vite 框架文档,以获取有关如何在具有 Vite 的 React 项目中设置 Storybook 的更多信息。
- Storybook 的 React Webpack 框架文档,以获取有关如何在具有 Webpack 5 的 React 项目中设置 Storybook 的更多信息。
- Storybook 的帮助文档,以联系社区并寻求帮助。
现在您已经成功安装了 Storybook 并了解了它的工作原理,让我们继续您在设置向导中停止的地方,并更深入地研究编写 stories。