[英]How to display props type table in storybook 6.0.0
I'm creating ui-library for project (using Emotion), I added storybook with docs addon and I seems that storybook don't see props for styled component.我正在为项目创建 ui-library(使用 Emotion),我添加了带有 docs 插件的故事书,我似乎故事书没有看到样式组件的道具。 How can I fix that?
我该如何解决?
"@storybook/addon-docs": "^6.0.0-rc.3",
"@storybook/addon-knobs": "^6.0.0-rc.3",
"@storybook/react": "^6.0.0-rc.3",
// main.js // main.js
module.exports = {
stories: ["../src/**/*.stories.@(tsx|mdx)"],
// Add any Storybook addons you want here: https://storybook.js.org/addons/
addons: ["@storybook/addon-docs", "@storybook/addon-knobs/register"],
webpackFinal: async (config) => {
config.module.rules.push({
test: /\.scss$/,
use: ["style-loader", "css-loader", "sass-loader"],
include: path.resolve(__dirname, "../"),
});
config.module.rules.push({
test: /\.(ts|tsx)$/,
loader: require.resolve("babel-loader"),
options: {
presets: [["react-app", { flow: false, typescript: true }]],
},
});
config.resolve.extensions.push(".ts", ".tsx");
return config;
},
};
// Example.ts: // 例子.ts:
import { ExampleProps } from "./Example.types";
export const Example = styled.div<ExampleProps>`
color: ${(props) => props.color || "red"};
`;
export default Example;
// Example.stories.mdx // Example.stories.mdx
import { Meta, Story, Preview, Props } from "@storybook/addon-docs/blocks";
import { withKnobs, color } from "@storybook/addon-knobs";
import Example from "./Example";
<Meta title="Example" component={Example} decorators={[withKnobs]} />
# Preview
<Preview>
<Story name="Example">
<Example color={color('color', '#000', 'GROUP-ID1')}>Example</Example>
</Story>
</Preview>
# Props
<Props of={Example} />
Unfortunately props table displays:不幸的是,道具表显示:
No inputs found for this component.
I had the same problem since migrating to 6.0.0-rc.29.自从迁移到 6.0.0-rc.29 后,我遇到了同样的问题。
I installed storybook-addon-react-docgen
(v 1.2.42
) separately in package.json and now the props table has returned.我在 package.json 中分别安装了
storybook-addon-react-docgen
(v 1.2.42
),现在 props 表已经返回。
Also don't forget to add it to your addons array in main.js.也不要忘记将它添加到 main.js 中的插件数组。
Eg my main.js is例如我的 main.js 是
module.exports = {
stories: ['../src/**/*.stories.mdx', '../src/**/*.stories.js'],
addons: [
'@storybook/addon-docs',
'@storybook/addon-links',
'@storybook/preset-create-react-app',
'@storybook/addon-knobs/register',
'storybook-addon-react-docgen'
]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.