如果不查看更多设置,您可能会有点难以了解。如果您使用默认的故事书命令构建它,而没有其他配置,它应该“正常工作”......据我所知。
正如评论中提到的,Storybook has a specific build command 您可以添加到您的package.json 以将其导出为静态应用程序:
"scripts": {
"build-storybook": "build-storybook -c .storybook -o .out"
}
如果您正在使用该命令但仍然无法正常工作,您是否使用了任何自定义 webpack/build 工作流程,您也可以发布这些吗?
我已经构建了一个最小存储库以供参考,这可能有助于比较您的设置。除了package.json 中的包之外,它实际上只有 3 个文件; Storybook 配置、一个 React 组件和一个组件故事:
.storybook/main.js
module.exports = {
stories: ['../src/**/*.stories.[tj]s'],
addons: ['@storybook/addon-docs'],
};
src/components/message/message.js
import React from 'react'
import PropTypes from 'prop-types'
const Message = function Message({ text, color }) {
return (<div style={{ color }}>{text}</div>)
}
Message.propTypes = {
text: PropTypes.string.isRequired,
color: PropTypes.string.isRequired,
}
export default Message
src/components/message/message.stories.js
import React from 'react'
import Message from './message'
export default { title: 'Message', component: Message }
export const withText = () => <Message text="Hello World" color="green" />
如果我运行 build-storybook 命令、cd .out,然后运行 npx live-server,我会看到静态构建的故事书网站,其中包含我的 Message 组件,以及包含道具类型的“文档”选项卡:
完整存储库供参考
https://github.com/BenjaminWFox/react-storybook