首页 >web前端 >css教程 >如何向 ReactJS 组件添加多个类?

如何向 ReactJS 组件添加多个类?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-11-18 07:27:02427浏览

How to Add Multiple Classes to ReactJS Components?

向 ReactJS 组件添加多个类

使用 ReactJS 和 JSX 时,您可能会遇到需要将多个类应用于一个组件的情况单一成分。一种常见的情况是在聚焦或单击元素时有条件地添加活动类。

在您的示例中,您尝试将多个类添加到 li 元素的 className 属性,如下所示:

<li key={index} className={activeClass, data.class, "main-class"}></li>

但是,这种方法使用逗号运算符,,它仅连接字符串而不添加空格。要正确添加多个类,需要使用 ES6 模板文字功能。

在 AccountMainMenu 组件中,修改 render 方法如下:

render: function() {
    // ... existing code

    return (
      <div className="acc-header-wrapper clearfix">
        <ul className="acc-btns-container">
          {accountMenuData.map((data, index) => {
            let activeClass = "";

            if (this.state.focused == index) {
              activeClass = "active";
            }

            return (
              <li
                key={index}
                className={`${activeClass} ${data.class} main-class`}
                onClick={this.clicked.bind(self, index)}
              >
                <a href="#" className={data.icon}>
                  {data.name}
                </a>
              </li>
            );
          })}
        </ul>
      </div>
    );
  }

现在,className 属性使用 template用空格连接多个类的文字。通过插值 activeClass 和 data.class 变量,您可以有条件地应用所需的类。

这种方法允许您根据组件的状态或 props 动态添加和删除类,从而为 ReactJS 提供更大的灵活性和控制组件。

以上是如何向 ReactJS 组件添加多个类?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn