Storybook MDX:动态元标题

Storybook MDX: Dynamic Meta Title

如何在 Markdown Extended *.stories.mdx 文件中的 Storybook Meta 组件上设置动态 title 属性?

import { Meta } from '@storybook/addon-docs/blocks';

// displays title as 'undefined' in sidebar nav
<Meta title={conditionalValue ? 'foo' : 'bar'} />

我还尝试将 Meta 包装在 higher-order 组件中,这会触发错误:Unexpected default export without title

import { Meta } from '@storybook/addon-docs/blocks';

export const MetaCustom = (props) => {
  const title = conditionalValue ? props.foo : props.bar;
  return <Meta title={title} />;
};

// mdx stories file
<MetaCustom foo="foo" bar="bar" />

我尝试创建一个 util 函数并导入到 mdx 中,看起来它正在工作。

utils.js

export function generateTitle (condition) {
   return condition ? 'foo' : 'bar'
}

Component.stories.mdx

import { generateTitle } from './utils.js';

    <Meta
      title={generateTitle(true)}
    />

希望对您有所帮助!