[Bug]:缺少@storybook/angular的excludeDecorator用于文档

3vpjnl9f  于 5个月前  发布在  Angular
关注(0)|答案(3)|浏览(89)

描述错误

使用componentWrapperDecorator设置组件文档时,"显示代码"中会显示 Package 器代码。要排除 Package 器代码,您可以在组件上设置一个参数,如下所述。
根据示例,对于React( https://github.com/storybookjs/storybook/blob/v7.6.3/code/renderers/react/src/docs/jsxDecorator.tsx ),您只需设置以下参数:

{
  docs: {
      source: {
          excludeDecorators: true
      }
  }
}

然而,在使用@storybook/angular时,这不起作用。我在您的代码中发现,您没有考虑到excludeDecorators标志。( https://github.com/storybookjs/storybook/blob/v7.6.3/code/frameworks/angular/src/client/docs/sourceDecorator.ts )

一个可能的解决方案:
文件: https://github.com/storybookjs/storybook/blob/v7.6.3/code/frameworks/angular/src/client/docs/sourceDecorator.ts
更改:
if (component && !userDefinedTemplate) {

改为:

if (component && !userDefinedTemplate || component && context?.parameters.docs?.source?.excludeDecorators)

重现问题

使用@storybook/angular。
有一个带有文档的组件。
添加以下装饰器:
componentWrapperDecorator((story) =>
${story} ),
添加以下参数:
parameters: { docs: { source: { excludeDecorators: true, } } },
点击“显示代码”,您将看到 <div style="margin: 5em">...YourComponent</div> 而不是仅显示YourComponent。

系统

  • 无响应*

其他上下文

  • 无响应*
pgky5nke

pgky5nke1#

你好,@pedroleitaogls
感谢你打开这个问题!
你想创建一个PR来修复它吗?

7rfyedvj

7rfyedvj2#

你好@valentinpalkovic,感谢快速回复。我已经创建了PR #25212。不过我在设置本地项目以测试它时遇到了一些麻烦。
在使用yarn task --task dev start-from auto --template angular-cli/default-ts运行项目时,我遇到了一些错误。也许我没有正确设置项目或者缺少某些任务。

bvjveswy

bvjveswy3#

你好@valentinpalkovic,抱歉回复晚了,这个问题和#12022非常相似。参数上的docs.source.excludeDecorators属性在https://storybook.js.org/docs/api/doc-block-source#excludedecorators上不起作用,如果你正在使用Angular框架。

相关问题