私はナビゲーション要素用の簡単な反応コンポーネントを作成しようとしています。これはこれまで私がこれまでやっていた方法です。React:クラスとそれに加えて変数クラスの使い方
これは本当に簡単な質問ですが、classNameに変数値を追加するにはどうすればよいですか?この例では、すべての要素は、クラスitem
を持っており、さらにクラスにactive
export default class Example extends Component {
constructor(props) {
super(props);
this.state = { activeTab: 'Initial' };
this.setActiveClassOnTab = this.setActiveClassOnTab.bind(this);
this.handleChangeTabs = this.handleChangeTabs.bind(this);
}
setActiveClassOnTab(tab) {
return this.state.activeTab === tab ? 'active' : '';
}
handleChangeTabs(event) {
this.setState({ activeTab: event.target.textContent });
}
render() {
return (
<div className="ui compact menu">
{ this.props.menu.map((item) => {
return (<a className="item { this.setActiveClassOnTab(item.title) }" onClick={ this.handleChangeTabs } key={ item.title}>{ item.title }</a>);
}) }
</div>
);
}
}
これはしかしリテラルテンプレート周りの中括弧が必要になります。投稿後 – Timo
が編集されました。編集:P – ospfranco
このコードがOPに役立つ理由の説明を追加してください。これにより、今後の視聴者からの回答が得られます。詳細については、[回答]を参照してください。 –