【发布时间】:2021-09-01 12:47:06
【问题描述】:
我是reactjs 的新手。我有一个array,它将是
const mediumNames = ["TAMIL Medium", "ENGLISH MEDIUM"]
我使用此代码生成了两张卡片:
const [selectedMediumColor, setSelectedMediumColor] = useState('')
<div>
{mediumNames.map((text, index,) => (
<Card style={{ border: selectedMediumColor }} onClick={() => onClickMedium(text,index)} >
<div >
<img className={classes.imginCardBoard} src={TNlogo}></img>
<Typography className={classes.textinCardBoard} > { text} </Typography>
</div>
</Card>
))}
</div>
我想在 ReactJS 中单击卡片时设置边框颜色。如果用户选择第一张卡片,边框颜色应为蓝色,下一张卡片边框颜色应为白色,反之亦然。
这是我写的函数代码:
const onClickMedium = (medium,indexno) => {
console.log(medium)
console.log(indexno)
if (medium === "TAMIL Medium") {
selectedMediumColor('2px solid #00adb5')
}
else {
selectedMediumColor('')
}
}
它正在为两张卡设置颜色。这是图像: enter image description here
我希望只为一张卡片设置颜色。我怎样才能做到这一点?请帮我解决一些问题。
【问题讨论】:
-
你需要做这样的事情 - stackoverflow.com/questions/69012531/…
标签: javascript html css reactjs