Detaillierte Erläuterung von zwei Möglichkeiten zum dynamischen Ändern von CSS-Stilen in React

Detaillierte Erläuterung von zwei Möglichkeiten zum dynamischen Ändern von CSS-Stilen in React

Die erste Methode: Fügen Sie dynamisch eine Klasse hinzu, um Text durch Klicken auf eine Schaltfläche als Demo anzuzeigen oder auszublenden

importiere React, {Komponente, Fragment} von „react“;
importiere './style.css';
Klasse Demo erweitert Komponente {
    Konstruktor(Requisiten) {
        super(Requisiten);
        dieser.Zustand = {
            Anzeige: wahr
        }
        dies.handleshow = dies.handleshow.bind(dies)
        dies.handlehide = dies.handlehide.bind(dies)
    }
    rendern() {
        zurückkehren (
            <Fragment>
                {/*Fügen Sie dynamisch eine Klasse hinzu, um den Stil zu ändern*/}
                <p className={this.state.display?"active":"active1"}>Du bist mein Einziger</p>
                <button onClick={this.handlehide}>Klicken zum Ausblenden</button>
                <button onClick={this.handleshow}>Zum Anzeigen klicken</button>
            </Fragment>
        )
    }
    handleshow() {
        dies.setState({
            Anzeige: wahr
        })
    }
    handlehide() {
        dies.setState({
            Anzeige:false
        })
    }
}
Standarddemo exportieren;

CSS Code:

 .aktiv{
      Anzeige: Block;
  }
  .aktiv1{
    Anzeige: keine;
  }

Die zweite Methode: Dynamisches Hinzufügen eines Stils zum Anzeigen und Ausblenden von Text durch Klicken auf eine Schaltfläche als Demo

importiere React, {Komponente, Fragment} von „react“;
Klasse Demo erweitert Komponente {
    Konstruktor(Requisiten) {
        super(Requisiten);
        dieser.Zustand = {
            Anzeige2: wahr
        }
        dies.handleshow2 = dies.handleshow2.bind(dies)
        dies.handlehide2 = dies.handlehide2.bind(dies)
    }
    rendern() {
        const Anzeige2 = {
            Anzeige:dieser.Zustand.Anzeige2 ? 'Block' : 'keine'
        }
        zurückkehren (
            <Fragment>
                 {/*Fügen Sie dynamisch einen Stil hinzu, um den Stil zu ändern*/}
                 <p style={display2}>Du bist mein Einziger</p>
                <button onClick={this.handlehide2}>Klicken, um 2 auszublenden</button>
                <button onClick={this.handleshow2}>Klicken, um 2 anzuzeigen</button>
            </Fragment>
        )
    }
    handleshow2() {
        dies.setState({
            Anzeige2: wahr
        })
    }
    handlehide2() {
        dies.setState({
            Anzeige2:false
        })
    }
}
Standarddemo exportieren;

Zusammenfassung: Wenn Sie Klassen verwenden, um den CSS-Stil zu ändern, können Sie mehrere sich dynamisch ändernde CSS-Attribute schreiben, was übersichtlich aussieht. Wenn Sie Stile verwenden, um mehrere CSS-Attribute zu schreiben, sieht es kompliziert aus. Dies sind alles persönliche Meinungen, bitte weisen Sie auf etwaige Mängel hin

Damit ist dieser Artikel über zwei Möglichkeiten zum dynamischen Ändern von CSS-Stilen in React abgeschlossen. Weitere Informationen zum dynamischen Ändern von CSS-Stilen 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:
  • React verwendet Emotionen zum Schreiben von CSS-Code
  • Lösung für CSS-Referenzpfadfehler basierend auf der Paketierung von React-Projekten
  • React verwendet CSS, um ein Beispiel für eine React-Animationsfunktion zu implementieren
  • 7 Möglichkeiten zur Verwendung von CSS in React (die umfassendste Zusammenfassung)
  • Ein Beispiel für die Verwendung von CSS-Modulen in Create React App
  • Beispielcode für die Verwendung von CSS-Modulen in Create-React-App
  • Detaillierte Erklärung zum Hinzufügen von CSS-Modulen, Sasss und Antd mithilfe von Create-React-App
  • ReactJs-Methode zum Festlegen des CSS-Stils
  • Wie man mit React elegant CSS schreibt

<<:  Einfache Methode zur Installation von MySQL unter Linux

>>:  Detaillierte Erklärung der Docker-Datenspeichervolumes

Artikel empfehlen

So verwenden Sie die Debouce-Anti-Shake-Funktion in Vue

Inhaltsverzeichnis 1. Anti-Shake-Funktion 2. Verw...

So finden und löschen Sie doppelte Datensätze in MySQL

Hallo zusammen, ich bin Tony, ein Lehrer, der nur...

Gängige Methoden und Probleme der Docker-Bereinigung

Wenn Sie Docker für die Entwicklung im großen Maß...

Importieren von CSS-Dateien unter Verwendung von Beurteilungsbedingungen

Lösung 1: Verwenden Sie bedingten Import im HTML-...

Erstellen von responsiven E-Mails mit Vue.js und MJML

MJML ist ein modernes E-Mail-Tool, mit dem Entwic...

Bringen Sie Ihnen bei, wie Sie die Zeigerposition in Javascript erhalten

Die Methode zum Abrufen der Zeigerposition in Jav...

So ändern Sie den MySQL-Zeichensatz utf8 in utf8mb4

Wenn für MySQL 5.5 der Zeichensatz nicht festgele...

Docker verwendet Busybox, um ein Basis-Image zu erstellen

Die erste Zeile eines Docker-Images beginnt mit e...

Erfahrungsaustausch zur Optimierung von MySQL-Big-Data-Abfragen (empfohlen)

Ernsthafte MySQL-Optimierung! Wenn die MySQL-Date...