首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用react-slick在轮播中显示react组件

使用react-slick在轮播中显示react组件
EN

Stack Overflow用户
提问于 2016-07-08 22:35:46
回答 4查看 10K关注 0票数 4

我正在尝试使用react-slick在carousel中显示我的自定义组件:

代码语言:javascript
复制
    <Slider {...settings}>
        <Hello />
        <Hello />
    </Slider>

但是react-slick似乎不支持这样的使用方式。

JsFiddle演示

https://jsfiddle.net/jqLzpewm/

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2016-07-08 22:52:06

它的工作,这一切都是关于样式的旋转木马。我已经更新了你的小提琴,以显示它是有效的:https://jsfiddle.net/ox1ujxa4/1/

只做了一些次要的样式:

代码语言:javascript
复制
<div style={{display: 'inline-block', width: 500}}>
  Hello
</div>
票数 4
EN

Stack Overflow用户

发布于 2017-08-12 00:54:55

我今天遇到了这个问题。我有一个无状态的Slide组件,我正在做这样的事情:

代码语言:javascript
复制
<Slider {...settings}>
    {
        slideTitles.map((title) => {
            return <Slide title={title} />;
        });
    }
</Slider>

幻灯片堆叠在一起,就好像所有的幻灯片都被当作一个幻灯片的一部分。

我注意到react-slick没有将它应该应用到每个幻灯片的属性,即:

代码语言:javascript
复制
<div data-index="3" 
     class="slick-slide" 
     tabindex="-1" style="outline: none; width: 146705px;" 
     data-reactid=".0.0.1.0.$original3">

以下是解决方案(至少对于无状态组件):

代码语言:javascript
复制
<Slider {...settings}>
{
    slideTitles.map((title) => {
        return Slide({title});
    });
}
</Slider>

JsFiddle

票数 1
EN

Stack Overflow用户

发布于 2017-12-07 21:12:34

你需要用<div>包装你的React组件

代码语言:javascript
复制
 <Slider {...settings}>
    <div>
        <Hello />
    </div>
    <div>
        <Hello />
    </div>
 </Slider>

或者:

代码语言:javascript
复制
<Slider {...settings}>
    {
        slideItems.map((slideItem) => (
            <div key={slideItem.id}>
                <Slide title={slideItem.title}/>
            </div>
        ))
    }
</Slider>

data-indexclasstabindexstyle属性将添加到该<div>

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38269293

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档