javascript - 单击时将类添加到 ReactJS 中的多个对象

标签 javascript css reactjs

我是 React 的新手,很难为我的问题找到合适的答案。我有一个包含多个按钮 (23) 的列表,我想为每个被单击的按钮添加一个 .active 类。我将按钮“值”保存在状态数组中供以后使用。因此,可以有多个具有事件类的按钮,没有具有相应类的按钮。

class DistrictModal extends React.Component {

constructor(props) {
    super(props);

    this.state = {
        selectedDistricts: []
    }
}

addDistrictToList = (e) => {
    this.setState(prevState => ({
        selectedDistricts: [...prevState.selectedDistricts, e]
    }));

}

render() {

<div className="list-group">
  <button type="button" onClick={() => this.addDistrictToList("1")} > 1. bezirk </button>
  <button type="button" onClick={() => this.addDistrictToList("2")} > 2. bezirk </button>
  <button type="button" onClick={() => this.addDistrictToList("3")} > 3. bezirk </button>
</div>

}}

最佳答案

试试这个:

<button type="button" onClick={() => this.addDistrictToList("1")}
className={this.state.selectedDistricts.includes(1) ? 'active' : ''}> 1. bezirk </button>

如果列表包含值“1”,则添加类 active

来源:StackOverflow

关于javascript - 单击时将类添加到 ReactJS 中的多个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59664229/

相关文章:

javascript - React 不更新文本(.getDOMNode() 的问题)

javascript - 如何让 div scroll overflow-x 在移动浏览器上工作?

javascript - 从 JSON react 映射菜单

android - WebView 在某些 Android 设备上不加载图像或 css

html - 简单的 Off Canvas 菜单不起作用

reactjs - 如何强制服务器端提供路由

javascript - 为什么我的 react-router 链接会把我带到页面中间?

Javascript .pac 文件

javascript OOP 语法,以及既是 var 又是函数的对象

html - 无法获取文本以转到页面顶部