【发布时间】:2020-10-21 12:19:16
【问题描述】:
代码如下:
state: {
button: "notclicked"
}
changeclass = () => {
this.setState({ button: "clicked" })
}
<ul>
<li className="linkactive">
<a class="vote-up-off" onClick={ this.changeclass } href="/">
<Icon className={ this.state.button } className=" fa fa-area-chart"/>
</a>
</li>
<li>
<a class="vote-up-off"href="/">
<Icon className="fa fa-bar-chart fa-2x"/>
</a>
</li>
<li>
<a class="vote-up-off" href="/>
<Icon className="fa fa-line-chart"/>
</a>
</li>
</ul>
我可以点击<li>更改班级,但是点击另一个<li>,如何让上一个班级回到notclicked?
我想向用户显示他当前所在的标签页
【问题讨论】:
-
你的意思是再次点击
- ?如果没有,那么您可以在要单击的
- 上放置另一个 onClick,您可以将类名作为参数传递给您 changeclass()
-
在我们解决切换类问题之前,您需要解决一些问题,这一行
<Icon className={this.state.button} className=" fa fa-area-chart"/>是错误的,您应该使用 Template Literals 像这样<Icon className=`${this.state.button} fa fa-area-chart`/> -
@RicardoSanchez,他们为什么需要模板文字?在我看来,按原样使用字符串是非常好的。
-
如果可能,请提供整个组件的代码实现,以便我们可以准确地看到您的代码中发生了什么
-
@Séraphin 据我所知,只有一个 className 道具是一种很好的做法,这就是为什么我建议使用模板文字,但我可能错了,所以我不应该做对我的第一条评论的断言。
标签: reactjs