を使用してli
要素を1つのクラスに追加するにはどうすればよいですか? li
をクリックした瞬間、state
が変更された場合、div
はすべてitem-active
クラスになります。シングルリースで状態を変更する
//import {cost} from '...';
export class CostFilter extends Component {
constructor(props) {
super(props);
this.state = {active: "item-not-active"};
this.handleClick = this.handleClick.bind(this);
}
handleClick(){
let isActive = this.state.active === "item-not-active" ? "item-active" : "item-not-active";
this.setState({active: isActive});
}
render() {
return (
<ul>
{cost.map((element, index) =>
<li onClick={this.handleClick} value={`cost-${element.cost}`} key={index}>
<div className={`hs icon-${element.cost} ${this.state.active}`}></div>
</li>
)}
</ul>
);
}
}
インデックスの代わりに 'element'を使用することはできますか? – TryingToImprove
はい、それは可能ですが、利益は見えません。 – dfsq
ソートを追加したり、アイテムを追加したり削除したりすることは可能でしょうか。 – TryingToImprove