VueTube/NUXT/components/ListRenderers/sectionListRenderer.vue

36 lines
771 B
Vue
Raw Normal View History

2022-03-24 11:47:13 +00:00
<template>
<div>
<v-list-item
v-for="(renderer, index) in render.contents"
:key="index"
2022-04-25 03:24:46 +00:00
class="pa-0 min-height-0"
2022-03-24 11:47:13 +00:00
>
<component
:is="Object.keys(renderer)[0]"
2022-05-18 03:19:22 +00:00
v-if="getComponents()[Object.keys(renderer)[0]]"
2022-03-24 11:47:13 +00:00
:key="index"
:render="renderer[Object.keys(renderer)[0]]"
></component>
</v-list-item>
</div>
</template>
<script>
2022-03-24 20:46:17 +00:00
import itemSectionRenderer from "~/components/SectionRenderers/itemSectionRenderer.vue";
import shelfRenderer from "~/components/SectionRenderers/shelfRenderer.vue";
2022-03-24 11:47:13 +00:00
export default {
components: {
itemSectionRenderer,
shelfRenderer,
},
props: ["render"],
methods: {
getComponents() {
return this.$options.components;
},
},
};
</script>