шаблона в render-функции?
Уже который раз натыкаюсь на задачу такого типа, но хз как это гуглить.
Короче, есть такой код:
<div>
Тут может быть слот:
<div v-if="hasSlotData('after-input')" class="form-row__slot form-row__slot_after-input">
<slot name="after-input"></slot>
</div>
</div>
Часть с v-if, как видно, шаблонная, хочется ее вынести в какой-то метод. В JSX мы бы сделали так:
function drawSlot(name) {
if (hasSlotData(name)) {
return <div class="...">...</div>
}
}
И в шаблоне:
<div>Тут может быть слот: {drawSlot('after-input')}</div>
Для Vue я в прошлый раз решил, просто добавив компонент-прослойку.
Но это как-то много писанины, лишняя сущность и лишняя магия внутри (например, прокинуть vnode-ы из слотов вниз оказалось нифига не просто).
Тащить JSX не особо хочется, да и не очень понятно, поможет ли он. Есть идеи?
в реакте самый тру вариант создать компоненту. Во вбю, в прицнипе, тоже. Но вроде бы можно создать метод с jsx
почекай исходники vuetify , там все это дело так и выносят
Обсуждают сегодня