私はもっと多くの情報をonclickに表示したいが、私は表示/非表示に異なるdivがある。 だから。私はそれをこのように実行します。 状態は次のとおりです。div要素のリアクトでもっと情報を表示
this.state = {
showMore: false,
showRewards: false,
fees: false,
showFees: false
};
ワン:
<div className='some'> <h3 >Rewards <i className="icon-im-rewards"></i></h3> <h5 className="showMoreDetails" onClick={() => this.show('rewards') }>{ showRewards ? '-' : '+' } { showRewards ? 'Show Less' : 'Show More' }</h5> { showRewards && detail.rewards.reward.map((name, i) => <p key={i}> { name }</p> ) } </div>
機能:
ショー(名){ LET {showMore 、showRewards、showFees} = this.state;
if (name === 'hightlights' && showMore === false) {
this.setState({
showMore: true
});
} else {
this.setState({
showMore: false
});
}
if (name === 'rewards' && showRewards === false) {
this.setState({
showRewards: true
});
} else {
this.setState({
showRewards: false
});
}
if (name === 'fees' && showFees === false) {
this.setState({
showFees: true
});
} else {
this.setState({
showFees: false
});
}
これは、それを改善する方法(私は一度に一つの拡大のdivを見ることができる)醜い、長すぎると正しく動作しませんか?
それははるかに良いですが、私はまだ一度に一つを見ることができます –