React-router <Link>
刚出现一个有线问题,当我包装一个带有背景的div时,它不会显示图像,但是如果我注释掉Link,背景就会显示出来,有没有人遇到过同样的问题?
<Link to={{
pathname: "/productDetail",
search: "?productId=" + props.product.productid
}}>
<div
className="image"
style={{
backgroundImage: `url(correctURL)`
}}
/>
</Link>
当我注释掉链接后,网址是正确的,我可以保证原因。
更新: 不起作用:
<Link to={{
pathname: "/productDetail",
search: "?productId=" + props.product.productid
}}>
<div
className="image"
style={{
backgroundImage: `url(correctURL)`
}}
/>
</Link>
sass file:
.image {
width:100%;
height: 100%;
background-color: white;
background-size: contain;
background-repeat: no-repeat;
background-position: center;
margin-bottom: 5px;
}
这是我的解决方案:
<Link className="link" to={{
pathname: "/productDetail",
search: "?productId=" + props.product.productid
}}>
<div
className="image"
style={{
backgroundImage: `url(correctURL)`
}}
/>
</Link>
sass file:
link {
text-decoration: none;
width: 100%;
height: 100%;
.image {
width:inherit;
height: inherit;
background-color: white;
background-size: contain;
background-repeat: no-repeat;
background-position: center;
margin-bottom: 5px;
}
答案 0 :(得分:0)
这是您需要定义和放置一些高度的方式。
<div
style={{
backgroundImage:`url('https://images-eu.ssl-images-amazon.com/images/I/41lMD31ltzL.jpg')`,
height:'500px'}}>
</div>
或
let myUrl = 'https://images-eu.ssl-images-amazon.com/images/I/41lMD31ltzL.jpg';
这样定义
<div
style={{backgroundImage:`url(${myUrl})`,
height:'500px'}}>
</div>