我正在使用一個名為Hooper的滑塊組件。一切都很好,顯然我為此創建了一個單獨的組件,因為我不想將它包含在我的全局應用程序中,因為我并不總是使用它。<template> <hooper :infiniteScroll="true"> <slide v-for="(image, index) in images" :style=" { backgroundImage: 'url(\'img/' + image + '\')' }" :key="index">dsadasd</slide> </hooper></template><script> import { Hooper, Slide } from 'hooper'; import 'hooper/dist/hooper.css'; export default { props: [ 'images' ], name: 'Hooper', components: { 'hooper': Hooper, 'slide': Slide } };</script>所以要使用這個組件,我將它添加到我的刀片文件中,如下所示:@extends('layouts.app')@section('content') <carousel :images="[ 'slider-1.jpg', 'slider-2.jpg', 'slider-3.jpg' ]" class="carousel"></carousel> <div class="container"> <h1 class="p-4 text-lg font-sans">Home</h1> </div>@endsection我的問題因此,我希望能夠向每張幻燈片添加我想要的任何 HTML,并定義圖像名稱,因此在理想情況下,我的刀片文件中會包含以下內容:@extends('layouts.app')@section('content') <carousel class="carousel"> <slide :style=" { backgroundImage: 'url(\'img/image-1.jpg\')' }"> <h3>header text</h3> <p>dsadasfhshshsgfgas</p> </slide> <slide :style=" { backgroundImage: 'url(\'img/image-2.jpg\')' }"> <h3>header text 2</h3> <p>dsadasdsdsadsafhshshsgfgas</p> </slide> </carousel> <div class="container"> <h1 class="p-4 text-lg font-sans">Home</h1> </div>@endsection但是幻燈片不是注冊組件,我該怎么做?對此有另一個想法。以為我可以為組件中的每個循環創建一個插槽,然后在刀片文件中覆蓋該插槽,如下所示:Carousel.vue<template> <hooper :infiniteScroll="true" class="carousel"> <slide v-for="(image, index) in images" :style=" { backgroundImage: 'url(\'img/' + image + '\')' }" :key="index"> <slot :name="'slide' + index"></slot> </slide> </hooper></template>這似乎不起作用,我不確定為什么,有人知道解決方法嗎?
在插槽內的組件內使用組件...不知道怎么說
胡說叔叔
2022-07-08 10:22:27