当数据中没有值时有条件地显示占位符(ReactJS)
我有一个包含图像的json文件,我通过映射数据将它们传递到前端。当所有项目都有一个图像时,一切看起来都很棒。但是如果图像丢失,响应性就会中断,看起来就不太对劲。所以,我想显示一个占位符来代替“丢失的照片” 这是我的data.json文件的一个小版本当数据中没有值时有条件地显示占位符(ReactJS),reactjs,Reactjs,我有一个包含图像的json文件,我通过映射数据将它们传递到前端。当所有项目都有一个图像时,一切看起来都很棒。但是如果图像丢失,响应性就会中断,看起来就不太对劲。所以,我想显示一个占位符来代替“丢失的照片” 这是我的data.json文件的一个小版本 exports.administration = [ { id:'1', image: '/assets/images/media/christopher-walken.jpg', name:
exports.administration = [
{
id:'1',
image: '/assets/images/media/christopher-walken.jpg',
name: "Christopher Walken",
},
{
id:'2',
image: '',
name: "Jane Doe",
},
{
id:'3',
image: '/assets/images/media/keanu-reeves.jpg',
name: "Keanu Reeves",
},
];
这是我的JSX文件
class Administration extends Component {
constructor(props) {
super(props);
this.state = {
//showImage: true,
};
}
handleImage = () => this.setState({
//if there is no image in the data, show the placeholder.png
});
render() {
return (
<div>
{administrationData.map((row, index) => (
<Card className="custom-card">
<CardText>
<Row>
<Col xs={12} sm={3}>
{ //this the condition I looking for// this.state.showImage
?
<img style={styles.image} src={row.image} alt={row.name} />
:
<img src='/assets/images/placeholder.png' alt="Not Available" />
}
</Col>
</Row>
</CardText>
</Card>
))}
</div>
);
}
}
export default Administration;
类管理扩展组件{
建造师(道具){
超级(道具);
此.state={
//showImage:没错,
};
}
handleImage=()=>this.setState({
//如果数据中没有图像,则显示placeholder.png
});
render(){
返回(
{administrationData.map((行,索引)=>(
{//这是我要查找的条件//this.state.showImage
?
:
}
))}
);
}
}
出口违约管理;
有点像是个新手
提前感谢各位。这里不需要三元图像的状态,因为您已经有一个字段可以告诉您图像是否存在 我会做一些类似的事情:
{(row.image !== '') ? Image : Placeholder}
您正在使用css图像的值来显示占位符或图像。我读对了吗?我的图像在json文件中,而不是在我的样式中。我键入了错误的名称,我会修复它,它应该使用
row.image
.yessss!!就这样!非常感谢我的朋友!慢慢地但肯定地,我会掌握这个窍门的