React-Beispielcode zur Parameterübergabe für nicht über- und untergeordnete Komponenten

React-Beispielcode zur Parameterübergabe für nicht über- und untergeordnete Komponenten

React ist eine JAVASCRIPT-Bibliothek zum Erstellen von Benutzeroberflächen.

React wird hauptsächlich zum Erstellen von Benutzeroberflächen verwendet und viele Leute denken, dass React das V (View) in MVC ist.

React entstand als internes Projekt bei Facebook, wurde zum Erstellen der Instagram-Website verwendet und im Mai 2013 als Open Source veröffentlicht.

React weist eine hohe Leistung und eine sehr einfache Code-Logik auf, und immer mehr Menschen beginnen, darauf zu achten und es zu verwenden.

React-Funktionen

1. Deklaratives Design – React verwendet ein deklaratives Paradigma, das die Beschreibung von Anwendungen erleichtert.

2. Effizienz – React minimiert die Interaktion mit DOM, indem es DOM simuliert.

3. Flexibel – React funktioniert gut mit bekannten Bibliotheken oder Frameworks.

4.JSX – JSX ist eine Erweiterung der JavaScript-Syntax. Die Verwendung von JSX ist für die React-Entwicklung nicht erforderlich, wird jedoch empfohlen.

5. Komponenten – Das Erstellen von Komponenten mit React erleichtert die Wiederverwendung des Codes und lässt sich gut bei der Entwicklung großer Projekte anwenden.

6. Einweg-Datenfluss – React implementiert einen Einweg-Datenfluss, der die Code-Duplizierung reduziert und deshalb einfacher ist als die herkömmliche Datenbindung.

Hier ist ein Beispielcode für die Parameterübergabe von React-Komponenten, die nicht über- oder untergeordnet sind. Der spezifische Inhalt ist wie folgt:

Neue Version: Der Hauptzweck der ebenenübergreifenden Parameterübergabe besteht darin, die Zuweisung von Werten auf jeder Ebene und die Verwendung von dva zu vermeiden.

React von „react“ importieren
const {Anbieter, Verbraucher} = React.createContext('Standard')
exportiere Standardklasse ContextDemo erweitert React.Component {
    Zustand={
        neuerKontext:'Kontext erstellen'
    }
  rendern() {
      const { neuerKontext } = dieser.Zustand
    zurückkehren (
        <Anbieterwert={newContext}>
            <div>
                <label>Unterinhalt</label>
                <input Typ="text" Wert={neuerKontext} beiÄnderung={e=>this.setState({neuerKontext:e.target.value})}/>
            </div>
            <Sohn />
        </Anbieter>
    )
  }
}
Klasse Son erweitert React.Component{
    machen(){
        return <Verbraucher>
            {
                (Name)=>
                    <div Stil={{border:'1px durchgezogenes Rot',width:'60%',margin:'20px auto',textAlign:'center'}}>
                        <p>Von der Unterkomponente erhaltener Inhalt: {name}</p>
                        <Enkel />
                    </div>
                
            }
        
        </Verbraucher>
    }
}
Klasse Enkel erweitert React.Component{
    machen(){
        return <Verbraucher>
            {
                (Name)=>
                    <div Stil={{border:'1px durchgezogenes Rot',width:'60%',margin:'20px auto',textAlign:'center'}}>
                        <p>Der von der Enkelkomponente erhaltene Inhalt: {name}</p>
                    </div>
                
            }
        
        </Verbraucher>
    }
}

Außerdem wird die alte Projektmethode eingeführt, bei der Prop-Typen verwendet werden

React von „react“ importieren
Importiere PropTypes aus „Prop-Types“
Klasse ContextDemo erweitert React.Component {
    // getChildContext
    Zustand={
        neuerKontext:'Kontext erstellen'
    }
    getChildContext(){
        returniere {Wert:dieser.Zustand.neuerKontext}
    }
  rendern() {
      const { neuerKontext } = dieser.Zustand
    zurückkehren (
            <div>
                <div>
                    <label>Unterinhalt</label>
                    <input Typ="text" Wert={neuerKontext} beiÄnderung={e=>this.setState({neuerKontext:e.target.value})}/>
                </div>
                <Sohn />
            </div>
    )
  }
}
Klasse Son erweitert React.Component{
    machen(){
        Rückgabewert <div>
            <p>Kinder:{dieser.Kontext.Wert}</p>
        </div>
    }
}
Son.contextTypes = {
    Wert:PropTypes.string
}
ContextDemo.childContextTypes = {
    Wert:PropTypes.string
}
Standard exportieren () => 
  <KontextDemo>
  
  </ContextDemo>

Referenz

React von „react“ importieren

// Funktionskomponenten wollen auch Dom über Ref erhalten
const TargetFunction = React.forwardRef((props, ref) => (
    <Eingabetyp="Text" ref={ref}/>
))
exportiere Standardklasse FrodWordRefDemo erweitert React.Component {
  Konstruktor() {
    super()
    dies.ref = React.createRef()
  }

  componentDidMount() {
    this.ref.current.value = 'Ref-Eingabe abrufen'
  }

  rendern() {
    Rückgabewert <Zielfunktion ref={this.ref}>
    </Zielfunktion>
  }
}

pubsub-js

React von „react“ importieren
PubSub aus „pubsub-js“ importieren
exportiere Standardklasse Bro erweitert React.Component{
    Zustand = {
        Wert:''
    }

    machen(){
        const {Wert} = dieser.Zustand
        PubSub.subscribe('SOS',(res,data)=>{
            dies.setState({
                Wert:Daten
            })
        })
        zurückkehren (
            <div>
                Ich habe <h1>{value}</h1> erhalten
            </div>
        )
    }
}
React von „react“ importieren
PubSub aus „pubsub-js“ importieren
exportiere Standardklasse Children erweitert React.Component{
    Zustand = {
        Wert:''
    }
    handelChange = (e) => {
        dies.setState({
            Wert:e.Ziel.Wert
        })
    }
    senden = () => {
        const {Wert} = dieser.Zustand
        PubSub.publish('SOS',Wert)
    }
    machen(){
        const {Wert} = dieser.Zustand
        zurückkehren (
            <div>
                <input type="text" value={value} beiÄnderung={this.handelChange}/>
                <button onClick={this.send}>Senden</button>
            </div>
        )
    }
}

Dies ist das Ende dieses Artikels über den Beispielcode für die Parameterübergabe von React-Komponenten, die nicht über- und untergeordnet sind. Weitere relevante Inhalte zur Parameterübergabe von React-Komponenten, die nicht über- und untergeordnet sind, finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Über das Wertübertragungsproblem zwischen Antd-Baum und übergeordneten und untergeordneten Komponenten (Reaktionszusammenfassung)
  • Implementierungsmethode für die Kommunikation zwischen übergeordneten und untergeordneten Komponenten von React
  • Reagieren Sie auf die Methode zum Übergeben von Werten zwischen übergeordneten und untergeordneten Komponenten
  • Reagieren Sie auf Kommunikationseigenschaften zwischen übergeordneten und untergeordneten Komponenten
  • Detaillierte Erläuterung der Übertragung von Eltern-Kind-Komponenten in React und einiger anderer wichtiger Punkte
  • react.js Eltern-Kind-Komponente Datenbindung Echtzeit-Kommunikation Beispiel-Code
  • Implementierungsmethode für die Wertübertragung von übergeordneten und untergeordneten Komponenten (Komponentenkommunikation) von React

<<:  Netzwerkkonfiguration des Host Only+NAT-Modus unter VirtualBox

>>:  Installieren des Win10-Systems auf VMware Workstation 14 Pro

Artikel empfehlen

So verwenden Sie das Modul-FS-Dateisystem in Nodejs

Inhaltsverzeichnis Überblick Dateideskriptoren Sy...

Einführung und Verwendung der Angular-Pipeline PIPE

Vorwort PIPE, übersetzt als Pipeline. Angular Pip...

Die Prinzipien und Mängel der MySQL-Volltextindizierung

Der MySQL-Volltextindex ist ein spezieller Index,...

Redo-Dateiwartungsmethode der InnoDB-Engine

Wenn Sie die Größe und Anzahl der InnoDB-Redo-Log...

Fünf Richtlinien zum Schreiben von wartungsfreundlichem CSS-Code

1. Fügen Sie am Anfang des Stylesheets einen Komme...

Bei der Verwendung von MySQL aufgetretene Probleme

Hier sind einige Probleme, die bei der Verwendung...

Das Balkendiagramm von Vue + Echart realisiert Statistiken zu Epidemiedaten

Inhaltsverzeichnis 1. Installieren Sie zuerst ech...

So verwenden Sie JS WebSocket zur Implementierung eines einfachen Chats

Inhaltsverzeichnis Kurze Umfrage Langfristige Abf...

Wie löst Vue das domänenübergreifende Problem des Axios-Request-Frontends?

Inhaltsverzeichnis Vorwort 1. Warum treten domäne...

Detaillierte Erläuterung der Dateisystemformate der EXT-Serie in Linux

Linux-Dateisystem In der Abbildung oben sind herk...

Detaillierte Erläuterung der Verwendung des Linux-Zeitbefehls

1. Befehlseinführung Mit „time“ werden die für di...