в скопе (в разметке) того слота, который прокидывает наверх something, в другом слоте он уже будет невидим. И если нужно его использовать, то из второго слота тоже должен пробрасываться something
Т.е.
<DoubleSlotsComponent let:item >
<div slot="a">
<!-- item виден -->
</div>
<div slot="b">
<!-- item НЕ виден -->
</div>
</DoubleSlotsComponent>
<!--DoubleSlotsComponent-->
<slot name="a" {item} />
{#each array as arr (arr.id)}
<slot name="b"/>
{/each}
Тогда как если сделать так, то item будет виден и в b:
{#each array as arr (arr.id)}
<slot name="b" {item}/>
{/each}
У меня гораздо более сложный кейс, т.к. слоты форвардятся через 2 уровня, но суть такая же. Не ожидал, что item в одном случае и в другом — разные. Интересно, так и задумано?
хм это действительно как-то глупо. Логичнее тогда let:something делать было на самом слоте а не на компоненте
в целом синтаксис с let не такой удобный как с render prop, ниче никуда не сохранишь и выше не заюзаешь =) мб через экшен костыль тока можно
чет не пойму. ты хочешь чтобы scope слота был доступен из другого слота? 🤔
рендер пропс вообще не юзабильная хрень комон. она норм только до того момент как не разрастается до жути
Обсуждают сегодня