Как наследовать слоты в Vue?

Как наследовать слоты в Vue?
Используем компоненты Vuetify.

Хотим добавить возможность сохранения ширины колонок в v-data-table.

Для достижения этой цели хотим сделать компонент обёртку для v-data-table
Но как можно не многословно унаследовать все слоты, пропсы?
Чтобы в будущем использовать его как обычный v-data-table.

Предполагаю, что всё семейство нужно будет обернуть и оформить как компонент.
v-data-table
v-data-table-header
v-data-footer
v-edit-dialog
v-simple-checkbox
  • Вопрос задан
  • 508 просмотров
Решения вопроса 1
Djaler
@Djaler
Сеньор-помидор
<template>
    <v-data-table>
        <template v-for="(_, slot) of $slots" :slot="slot">
            <slot :name="slot"/>
        </template>

        <template v-for="(_, slot) of $scopedSlots" #[slot]="scope">
            <slot :name="slot" v-bind="scope"/>
        </template>
    </v-data-table>
</template>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы