如何添加多个className来响应组件?

cec*_*ode 12 reactjs

我需要将一个className添加到从父节点传递下来的组件中,另一个className与它的父节点没有任何关系,但是与组件本身有关.

<div className={this.state.className} className={this.props.content.divClassName}>
      <div className={this.props.content.containerClassName}>
      <div className="row">
      <div className="col-sm-6 col-sm-offset-6">
        <p>{this.props.content.subTitle}</p>
        <h1 className={this.props.content.titleClassName}>{this.props.content.headerText}</h1>
        <p className={this.props.content.subTitleClassName}>{this.props.content.paragraph}</p>
        <p>{this.props.content.quote}</p>
        <Button showMe={this.props.content.showButton} buttonText={this.props.content.buttonText} />
      </div>
      </div>
      </div>
    </div>
Run Code Online (Sandbox Code Playgroud)

当我尝试这个时,两个类都没有应用,我可以做其中一个或不同时做两个.我该如何实现这一目标?

JMM*_*JMM 26

<div className={`${this.state.className} ${this.props.content.divClassName}`}>
Run Code Online (Sandbox Code Playgroud)

或者,如果您不能使用模板字符串:

<div className={[this.state.className, this.props.content.divClassName].join(" ")}>
Run Code Online (Sandbox Code Playgroud)

  • 这比简单的串联优先吗?`{this.state.className +“” + this.props.content.divClassName}` (2认同)
  • @James取决于你问的问题.就个人而言,我可能只是做了刚添加的`[] .join()`方式,但我可能更喜欢模板字符串版本来连接. (2认同)

Muz*_*301 5

字符串和道具类的组合在这里

className={`${props.myClass} MyStringClass`}
Run Code Online (Sandbox Code Playgroud)