首先,您需要将 Vuetify 的字体加载器和插件添加到 Storybook 配置中。为此,请将以下内容添加到您的.storybook/preview.js
文件中
在这里,registerPlugins
加载 Vuetify 的字体并将所有组件注册到 Storybook 的 Vue 应用中。
接下来,您需要将您的故事包装在 Vuetify 的v-app
组件中,以便使用一些较大的布局组件,例如v-app-bar
。为此,请在.storybook/
中创建一个名为StoryWrapper.vue
的组件
withVuetifyTheme
装饰器现在,创建一个 Storybook装饰器,将您的故事包装在 StoryWrapper 组件中。
下面我在.storybook
中创建了一个新文件,名为withVuetifyTheme.decorator.js
。
现在,在您的preview.js
文件中将此装饰器提供给 Storybook。
Vuetify 自带亮色和暗色主题,您可以覆盖或添加主题。为了充分利用您的故事,您应该有一种方法可以在所有主题之间切换。
要添加我们的切换器,请在.storybook/preview.js
中声明一个名为theme
的全局类型,并为其提供一个可供选择的支持主题列表。
此代码将创建一个新的工具栏菜单,用于选择您希望用于故事的主题。
需要有一种方法来告诉 Vuetify 使用工具栏中选择的主题。这可以通过更新我们的StoryWrapper
组件和withVuetifyTheme
装饰器来实现
首先,为StoryWrapper
提供一个themeName
prop,它可以传递给v-app
现在,使用我们的装饰器将全局theme
变量作为 prop 传递给我们的StoryWrapper
组件
现在您已准备好将 Vuetify 与 Storybook 一起使用。🎉 请查看示例仓库以快速入门。
如果您在工作中使用 Vuetify,我们非常乐意您帮助我们制作一个自动应用上述配置的插件。加入Discord中的维护者团队参与进来,或者查看插件文档。