You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Storybook MDX中Angular带内容投影组件的参数传递问题

解决方案

首先检查你第一种写法的标签闭合错误:你写的是<<</inline-alert>,多了一个多余的<,修正后应该可以同时实现参数传递和内容投影:

<Canvas>
  <Story
    name="Primary"
    args={{
      severity: "error"
    }}
  >
    {(args) => {
      return <inline-alert {...args}>The alert message</inline-alert>;
    }}
  </Story>
</Canvas>

如果修正后依然无法正常渲染内容投影,可以使用模板字符串结合动态属性绑定的方式,自动遍历args绑定所有属性,无需逐个显式声明:

<Canvas>
  <Story
    name="Primary"
    args={{
      severity: "error"
    }}
  >
    {(args) => ({
      template: `
        <inline-alert 
          ${Object.entries(args).map(([key]) => `[${key}]="${key}"`).join(' ')}
        >
          The alert message
        </inline-alert>
      `,
      props: { ...args }
    })}
  </Story>
</Canvas>

这个写法通过Object.entries遍历args的所有键,动态生成属性绑定语句,再展开到模板中,同时保留内容投影的写法,既满足Controls插件的参数控制,又无需手动逐个传递属性。

内容的提问来源于stack exchange,提问作者Jan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 14:12:53