如何在地图功能中先跳过

Sir*_*ini 10 javascript reactjs

我想跳过.map函数中的第一个,我现在做的是:

return (
  <div className="gallery clearfix">
    <div className="gallery-image">
      <img src={block.gallery[0].images.thumbnail_sm} alt={block.title} srcSet={`${block.gallery[0].images.thumbnail_md} 1x, ${block.gallery[0].images.thumbnail_lg} 2x`} className="img-fluid" />
    </div>
    <div className="gallery-thumbs">
      <div className="row">
        { block.gallery.slice(1).forEach((item, i) => (
          <div className="gallery-item" key={i}>
            { block.gallery.length > 4 ?
              <div className="inner">
                <img src={block.gallery[i].images.thumbnail_sm} alt={block.title} srcSet={`${block.gallery[i].images.thumbnail_md} 1x, ${block.gallery[i].images.thumbnail_lg} 2x`} className="img-fluid" title="" />
                <div className="img-overlay">
                  <span className="img-overlay-body">{ block.gallery.length - 4 }+ <span className="hidden-xs">Foto's</span></span>
                </div>
              </div>
              :
              <img src="http://placehold.it/800x538" alt="" className="img-fluid" title="" />
            }
          </div>
          ))}
      </div>
    </div>
  </div>
);
Run Code Online (Sandbox Code Playgroud)

如你所见,我在第一个img标签中显示第一张图片,但它也会在第一个标签中显示,.map所以我得到了重复的图像.如何跳过.map函数中的第一个图像?

epa*_*llo 25

所以切片它跳过第一个

block.gallery.slice(1).map(...)
Run Code Online (Sandbox Code Playgroud)

您还需要引用传递给map的项,而不是使用带有orginal数组的索引.

block.gallery[i].images.thumbnail_sm
Run Code Online (Sandbox Code Playgroud)

应该

item.images.thumbnail_sm
Run Code Online (Sandbox Code Playgroud)