参加直播:周四,美国东部时间上午 11 点,Storybook 9 发布及 AMA(你问我答)

一个 Storybook 插件,用于添加一个“编辑此页...”链接

在 Github 上查看

Storybook 编辑页面插件

Storybook 编辑页面插件可以在 Storybook 中添加“编辑此页”链接。

预览 Edit on preview
文档标签页 Edit on docs
mdx 文件 Edit mdx

在线演示

sample-edit-page

安装

npm i -D storybook-addon-edit-page

配置

然后在您的 Storybook 配置中创建一个名为 addons.js 的文件。

将以下内容添加到其中(配置设置是可选的)

import { editPage } from 'storybook-addon-edit-page';

const gitPageResolver = ({ fileName } ) => {
  return fileName;
}
editPage({
  fileNameResolve: gitPageResolver,
  editPageLabel: 'edit this page...',
  render: ({ filePath, shortName, ...rest }) => (
    <div>
      {filePath && (
        <div>
          <h3>{shortName}</h3>
          <a target="_blank" href={filePath}>
            here
          </a>
        </div>
      )}
    </div>
  ),
});

用法

您可以在 CSF 中将源文件名添加到故事元数据中

export default {
  title: 'Stories|With edit',
  component: Link,
  parameters: {
    edit: {
      fileName: 'https://github.com/storybookjs/design-system/blob/master/src/components/Link.js'
    },  
  }
};

或者添加到 mdx 文件中

<Meta
  title="Test mdx|Add edit on Doc tab?"
  parameters={{
    edit:{ 
      fileName: 'https://github.com/storybookjs/storybook/blob/next/addons/docs/docs/docspage.md' 
    }  
 }}/>

选项

fileNameResolve:解析文件名的函数,默认返回提供的文件名 editPageLabel:“编辑此页”链接的标签 - 默认为 Edit this page render:自定义渲染“编辑此页”面板的函数

parameters : {
  filePath: string, //full file path
  shortName: string, //short name of the story file (component name)
  parameters: any,  //parameters of the current story
}
开发者
  • atanasster
    atanasster
标签