Javascript ReactJS-如何避免在Lightbox组件中最大化指定图像
我有一个react组件,它使用“react lightbox component”依赖项 我想防止所有名为“装饰图片”的图片被最大化为lightbox 这些图像应保留为缩略图,不能在Lightbox中最大化 默认情况下,其他图像应最大化 例如:Javascript ReactJS-如何避免在Lightbox组件中最大化指定图像,javascript,css,reactjs,Javascript,Css,Reactjs,我有一个react组件,它使用“react lightbox component”依赖项 我想防止所有名为“装饰图片”的图片被最大化为lightbox 这些图像应保留为缩略图,不能在Lightbox中最大化 默认情况下,其他图像应最大化 例如: /* pic_01 -> should be maximized pic_02 -> should be maximized pic_03 -> should be maximized decor
/*
pic_01 -> should be maximized
pic_02 -> should be maximized
pic_03 -> should be maximized
decorative_pic -> forbidden to be maximized
decorative_pic -> forbidden to be maximized
decorative_pic -> forbidden to be maximized
*/
组件反应代码:
import React, { Component } from 'react'
import Lightbox from 'react-lightbox-component';
const LightBoxTest = () => (
<div>
<Lightbox images={[
{
src: '../images/pic_01.jpg'
},
{
src: '../images/pic_02.jpg'
},
{
src: '../images/pic_03.jpg'
},
{
src: '../images/decorative_pic.jpg'
},
{
src: '../images/decorative_pic.jpg'
},
{
src: '../images/decorative_pic.jpg'
}
]} />
</div>
);
export default LightBoxTest
但它只解决了问题的一部分。实际上,当您单击这些图像时,相应的灯箱不会以正确的方式显示
因此,问题是当您单击lightbox内的“下一步”按钮时。这些装饰性图像在灯箱内部显示为最大化,并尊重默认方式,我不希望这样
如何解决?可能会覆盖某些依赖项方法?为了避免将这些装饰性图像插入到最大化的灯箱组中?我不知道 如您所见,此库没有可用的道具传递函数来禁用某些图像的单击事件。您都无法控制下一张和上一张图片的事件 您可以通过
renderImagesFunc
prop来覆盖渲染所有图像的函数。这将禁用onClick
功能,但不会禁用next和prev事件
(
)}
/>
演示:
另一种选择是使用已经有更多控制功能的库作为道具,例如可能您只需要在组件灯箱之前渲染新的装饰图像
import React,{Component}来自“React”
从“react Lightbox component”导入Lightbox;
常量装饰图像=[
“./图片/装饰图jpg”,
“./图像/装饰图片2.jpg”,
“./图片/装饰图片3.jpg”
]
常量LightBoxTest=()=>(
{DecorativeImages.map(img=>(
))
})}
);
导出默认LightBoxTest
img[src*='decorative']{
cursor:default;
pointer-events: none;
}