私は次の例を持っています:Vue.js子供の子供のスロットを使用
ここは私の子コンポーネントです。以下のコンポーネントのすべてのものはこれに基づいています。
<template>
<div class="content-box">
<div class="boxtitlecontainer titleColor">
<slot name="title">Title</slot>
</div>
<div class="insidebox boxColor">
<slot></slot>
</div>
</div>
</template>
これは子供の1人です。
<template>
<div class="example">
<box>
<div slot="title"><slot name="title">Title</slot></div>
<slot></slot>
</box>
</div>
</template>
このコンポーネントは、私のApp.vue
で直接使用されています。 <slot>
を使うには、私が見つけた唯一の方法は上記のものです。
私の質問は:これを行うもっとエレガントな方法があり、div-Boxesは不要ですか?私は、名前の付いたスロットではできないことを意味します。私は<slot>
はcontent -> slot(1st children) -> slot(2nd children)
のように再帰的に表示することができると思うが、私は名前付きスロットでそれを行う方法については考えていない。
ご協力いただきありがとうございます。
目標は何ですか。 – pirs
私の解決策によって目標はすでに達成されています。問題は、どのようにしてよりエレガントにすることができるかということです。しかし、指定するために、目標はボックスコンポーネントを再利用することです。 divを削除すると、何も表示されず、スロット内のテキストが表示されます。 –
再帰的なコンポーネントとして ''が必要でしょうか? –
pirs