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

Methodenbeispiel zum sicheren Abrufen tiefer Objekte von Object in Js

Inhaltsverzeichnis Vorwort Text Parameter Beispie...

Detaillierte Erklärung der berechneten Eigenschaften von Vue

1. Was ist ein berechnetes Attribut? Einfach ausg...

MySQL-Partitionierungspraxis mit Navicat

MySQL-Partitionierung ist hilfreich bei der Verwa...

So installieren Sie die Linux-Onlinesoftware gcc online

Befehle zur Linux-Onlineinstallation: yum install...

Schwebendes Menü, kann einen Bildlaufeffekt nach oben und unten erzielen

Der Code kann noch weiter optimiert werden. Aus Z...

Der Nginx-Reverseproxy leitet Anfragen von Port 80 an 8080 weiter.

Lassen Sie uns zunächst eine Reihe von Konzepten ...

Installationsprozess von MySQL5.7.22 auf dem Mac

1. Verwenden Sie das Installationspaket, um MySQL...

Dynamische Vue-Komponente

Inhaltsverzeichnis 1. Komponente 2. Keep-Alive-Mo...

So deinstallieren und installieren Sie Tomcat neu (mit Bildern und Text)

Deinstallieren Sie tomcat9 1. Da die Installation...

react+antd.3x implementiert IP-Eingabefeld

In diesem Artikel wird der spezifische Code von r...

jQuery implementiert eine einfache Änderung der Schaltflächenfarbe

Wir möchten in HTML und CSS die Farbe eines Butto...