【问题标题】:How can I call the fallback slot content from a parent component?如何从父组件调用后备插槽内容?
【发布时间】:2021-05-27 21:32:12
【问题描述】:

我有一个 Table 组件,它有一个带有回退的单元格槽:

<!-- .... -->
    <slot name="cell" {column} {columnIndex}>
        <div style="color: green">
            {column} : { cells[columnIndex] }
        </div>
    </slot>
<!-- .... -->

当使用表格组件时,我想只为一列索引覆盖插槽内容:

<Table columns={['a', 'b', 'c']} cells={[1, 2, 3]}>
    <div slot="cell" let:columnIndex>
        {#if columnIndex == 2 }
          3333
        {:else }
          HOW TO CALL FALLBACK OF TABLE?
        {/if}
    </div>
</Table>

如何从 Table 组件调用单元格槽后备?

https://svelte.dev/repl/0e455d61f1db442c99a5320ce85df041?version=3.32.3

【问题讨论】:

    标签: svelte-3


    【解决方案1】:

    基本上在 Svelte 中,只有在没有提供内容时才会调用插槽的后备,在您的情况下,您在插槽中提供了一个元素,因此后备将永远不会被调用。

    看看这个Example 它展示了如何实现你想要的

    【讨论】:

    • 太棒了!不知道可以把一个槽作为根节点放在一个组件中。
    • 事情是,我真的很想调用父组件的后备而不是复制它。
    • 是的,Svelte 很酷,与 React 相比,我非常喜欢 Svelte 的插槽机制
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-17
    • 1970-01-01
    • 2018-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多