Ziel dieses Artikels ist es, die Grundfunktionen einiger Komponenten mithilfe einer möglichst klaren Struktur zu implementieren. Ich hoffe, gemeinsam mit Ihnen zu lernen und Fortschritte zu machen. Effektanzeige: Testkomponenten: Klasse Test erweitert Komponente { Konstruktor(Requisiten) { super(Requisiten) dieser.Zustand = { aktiv:1 } } beiGruppenänderung(Wert) { dies.setState({ aktiv: Wert }) } rendern() { zurückkehren ( <div> <RadioGroup beiÄnderung={diese.beiGroupÄnderung.bind(diese)} aktiv={diese.Zustand.aktiv}> <Radio value={1}>Mit Guthaben bezahlen</Radio> <Radio value={2}>WeChat Pay verwenden</Radio> </RadioGroup> <Schaltfläche bei Klick={()=>{ console.log("Die aktuelle Auswahl ist: "+this.state.active) }}>Weiter</Button> </div> ) } } Standardtest exportieren; Radiogruppe: importiere React, {Komponente} von „react“; Klasse RadioGroup erweitert Komponente { handleActiveChange(Wert) { console.log(`${value} ist ausgewählt`) this.props.onChange(Wert) } rendern() { zurückkehren ( <div> { React.Children.map(diese.props.children, Kind => { let isActive = this.props.active === child.props.value ? true : false returniere React.cloneElement(Kind, { Bezeichnung: child.props.children, Wert: child.props.value, aktiv: istAktiv, beim Klicken: dies.handleActiveChange.bind(dies) }) }) } </div> ) } } Standard-RadioGroup exportieren; Radio.jsx: importiere React, {Komponente} von „react“; importiere "./radio.scss" Klasse Radio erweitert Komponente { rendern() { zurückkehren ( <div className="radio-wrap" onClick={this.props.onClick.bind(this,this.props.value)}> <div Klassenname="links"> <div className={`circle ${this.props.active === true ? 'aktiv' : ''} `}> <div Klassenname = "Gabel""></div> </div> <div className="label">{diese.props.label}</div> </div> </div> ) } } Standardradio exportieren; Radio.scss: .radio-wrap { Höhe: 40px; Hintergrundfarbe: #ffffff; Anzeige: Flex; Elemente ausrichten: zentrieren; Polsterung: 0px 30px; &:aktiv { Hintergrundfarbe: rgb(221, 221, 221); } .links { Anzeige: Inline-Block; .Kreis { Anzeige: Inline-Block; Höhe: 22px; Breite: 22px; Box-Größe: Rahmenbox; Rand: 1px durchgezogen #c5c9cd; Randradius: 50 %; Hintergrundfarbe: #ffffff; Position: relativ; } .aktiv{ Hintergrundfarbe: #1eb94a; .Gabel { Höhe: 12px; Breite: 5px; Rahmen rechts: 1,5px durchgezogen #ffffff; Rahmen unten: 1,5px durchgezogen #ffffff; Position: absolut; oben: 40%; links: 50%; transformieren: verschieben (-50 %, -50 %) drehen (45 Grad); } } .Etikett { vertikale Ausrichtung: oben; Rand links: 10px; Anzeige: Inline-Block; Höhe: 22px; Zeilenhöhe: 22px; Schriftgröße: 14px; } } } Dies ist das Ende dieses Artikels über den Beispielcode zur Implementierung der Radiokomponente in React. Weitere relevante Inhalte zur Implementierung der Radiokomponente in React finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Detaillierte Erklärung der Verwendung und Unterschiede verschiedener Sperrmechanismen in Linux
>>: So beheben Sie den Fehler beim MySQL-Transaktionsvorgang
1. Aktualisieren Sie die Yum-Quelle Die PostgreSQ...
Code kopieren Der Code lautet wie folgt: li {Brei...
Deklarieren von Variablen Festlegen globaler Vari...
Inhaltsverzeichnis Regelmäßig beschneiden Spiegel...
In diesem Artikel wird hauptsächlich die Integrat...
Beim Kapseln von Vue-Komponenten werde ich weiter...
Vorwort [root@localhost ~]# cat /etc/fstab # # /e...
Inhaltsverzeichnis Überblick Promise Race Methode...
1. Einleitung Ich habe vor zwei Jahren ein Projek...
Nehmen wir Windows als Beispiel. Bei Linux ist es...
Erst Code, dann Text Code kopieren Der Code lautet...
Inhaltsverzeichnis 1 Versprechen Unterbrechen Sie...
Inhaltsverzeichnis Vorwort 1. Nginx + Tomcat 2. K...
Inhaltsverzeichnis 1. Übersicht 1.1 Verwendung vo...
Vorwort Was ist eine langsame Abfrage und wie kan...