可以使用字符串拼接的方式动态生成类名,例如:

const isActive = true;
const className = 'my-class ' + (isActive ? 'active' : '');
return <div className={className}>Hello World!</div>;

这里的 isActive 是一个布尔值,如果为 true,则会在类名后添加 active

  • 使用模板字符串
  • 可以使用模板字符串的方式动态生成类名,例如:

    const isActive = true;
    const className = `my-class ${isActive ? 'active' : ''}`;
    return <div className={className}>Hello World!</div>;
    

    这里使用了模板字符串 ${} 语法,将变量 isActive 的值动态插入类名中。

  • 使用类名库
  • 如果你需要更复杂的类名处理,可以使用一些类名库,例如 classnamesclsx 等。这些库提供了一些便捷的函数,可以帮助你处理类名,例如:

    import classNames from 'classnames';
    const isActive = true;
    const className = classNames('my-class', { active: isActive });
    return <div className={className}>Hello World!</div>;
    

    这里使用了 classnames 库,它可以将多个类名组合在一起,并根据条件添加或移除类名。

    以上是 React 中动态添加类名的几种方式,希望能对您有所帮助。

  • StevenUV
  •