was ich tun möchte, wenn ich auf eines der Listenelemente klicke, möchte ich die Klasse ausgewählt werden angewendet und wenn ich wieder klicke ich möchte es entfernt werden, so im Grunde eine Toggle-Funktion, aber es passiert zu allen drei Listenelemente, so dass, wenn ich auf einem klicken, erhalten alle ausgewählten, aber ich will es so nur kann man zu einer Zeittoggle Hintergrundfarbe des ausgewählten Listenelements react.js
import React from 'react';
export default class Order extends React.Component {
constructor() {
super()
this.state = {
selected: false,
};
}
toggleChoice() {
const selected = !this.state.selected;
this.setState({selected});
}
render() {
const { selected } = this.state;
const selectedCircle = selected ? " selected":"";
return (
<div class="container" id="order-layout">
<div class="row">
<div class="card-panel white">
<div class="center">
<h5>Your Order</h5>
<p class="margin-top-30 bold">Choose Pizza size in cm</p>
<ul class="margin-top-30">
<li ><div onClick={this.toggleChoice.bind(this)} class={"circle-20 hovered-circle" + selectedCircle}>20</div></li>
<li ><div onClick={this.toggleChoice.bind(this)} class={"circle-30 hovered-circle" + selectedCircle}>30</div></li>
<li ><div onClick={this.toggleChoice.bind(this)} class={"circle-40 hovered-circle" + selectedCircle}>40</div></li>
</ul>
</div>
</div>
</div>
</div>
);
}
}
gut erklärt .. gut –
danke für Ihre Antwort, ich verstehe jetzt, aber immer noch mit diesem können Sie alle 3 zur gleichen Zeit wählen, und was ich will, ist nur in der Lage zu wählen 1 Option und nicht die andere – user3209048
@ user3209048 Sie müssen nur Ihren Status in der ToggleChoice-Funktion 'selected = {}' löschen. Siehe aktualisierte Geige und Frage. – Boky