Maison > Questions et réponses > le corps du texte
P粉1558329412023-09-02 12:37:55
Si vous avez vraiment besoin de faire cela avec une machine à sous, alors vous devez le faire Utilisation des fonctions Vue render et JSX
<script setup> import { useSlots, onMounted, onUpdated, ref, h} from 'vue'; const slots = useSlots() const index = ref(0) const current = ref(null) onMounted(() => { const defaultSlotElements = slots.default() current.value = defaultSlotElements[0] }), onUpdated(() =>{ console.log(defaultSlotElements[index]) } ) const render = () => { return h('div', { class: 'carousel'}, [ h('p', `My default slot has ${slots.default().length} elements.`), h('div', slots.default()[index.value]), h('p', `Picture ${ index.value + 1 }`), h('button', { onClick: () => { index.value = index.value + 1 == slots.default().length ? 0 : index.value + 1 } }, 'Next') ]); }; </script> <template> <render /> </template>
C'est du travailSFC Playground
Mise à jour
Les fonctions de rendu peuvent être utilisées avec des composants personnalisés.
Essayez de construire votre
Je ne vois pas d'autre moyen d'utiliser la fonction 默认插槽
而不是使用render
pour créer ce que vous voulez.