[英]How can I add multiple className's to react component?
我需要將一個 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>
當我嘗試這個時,兩個課程都沒有應用,我可以做一個或另一個或兩個都做。 我如何實現這一目標?
<div className={`${this.state.className} ${this.props.content.divClassName}`}>
或者,如果您不能使用模板字符串:
<div className={[this.state.className, this.props.content.divClassName].join(" ")}>
字符串和道具類的組合在這里
className={`${props.myClass} MyStringClass`}
<div className={this.state.className && this.props.content.divClassName></div>
我使用這樣的classnames
:
# terminal - install
$ yarn add classnames
// React component
import classnames from 'classnames';
<Component classNames={classnames(class1, class2)} />
如果您使用 css 模塊,目前最好的方法是作為數組。 在那里你可以添加沒有模塊的常規類。 這是示例:
<div className={[styles.restaurantEntry, styles.barEntry, 'alice', 'text-center']}</div>
<div className={(classes.shiny, classes.round)}>
i'm shiny and round.
</div>
這適用於 React + Material-UI makeStyles
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.