


So rufen Sie die Methode der untergeordneten Komponente in der übergeordneten React-Komponente auf
Aufrufmethode: 1. Aufrufe in Klassenkomponenten können mit React.createRef(), funktionaler Deklaration von ref oder props mit dem benutzerdefinierten onRef-Attribut implementiert werden. 2. Aufrufe in Funktionskomponenten und Hook-Komponenten können mit useImperativeHandle oder forwardRef throw implementiert werden ref, um dies zu erreichen.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, React18-Version, Dell G3-Computer.
In React rufen wir häufig die Methode der übergeordneten Komponente in der untergeordneten Komponente auf, normalerweise mithilfe des Props-Callbacks. Manchmal ist es jedoch auch erforderlich, die Methode der untergeordneten Komponente in der übergeordneten Komponente aufzurufen, um eine hohe Kohäsion zu erreichen. Es gibt viele Methoden, wenden Sie sie nach Bedarf an.
In Klassenkomponenten
1, React.createRef()
Vorteile: leicht verständlich, mit Referenz versehen.
-
Nachteile: Unterkomponenten, die HOC verwenden, sind nicht verfügbar und können nicht auf echte Unterkomponenten verweisen
Einige häufig verwendete Schreibmethoden, z. B. in @observer von mobx eingeschlossene Unterkomponenten, gelten beispielsweise nicht für diese Methode. 2. Funktionale Deklaration von Referenzen Das Gleiche, aber die Art und Weise, ref zu definieren, ist anders.
import React, { Component } from 'react'; class Sub extends Component { callback() { console.log('执行回调'); } render() { return <div>子组件</div>; } } class Super extends Component { constructor(props) { super(props); this.sub = React.createRef(); } handleOnClick() { this.sub.callback(); } render() { return ( <div> <Sub ref={this.sub}></Sub> </div> ); } }
Nach dem Login kopieren
Vorteile: Wenn die Unterkomponente mit HOC verschachtelt ist, kann sie auch auf die reale Unterkomponente verweisen.
- Nachteile: Requisitenattribute müssen angepasst werden
... <Sub ref={ref => this.sub = ref}></Sub> ...
Nach dem Login kopieren
1, verwendenImperativeHandle
- Vorteile: 1. Die Schreibmethode ist einfach und leicht verständlich. 2. Wenn die Unterkomponente ein verschachteltes HOC hat, kann sie auch auf die echte Unterkomponente verweisen
import React, { Component } from 'react';
import { observer } from 'mobx-react'
@observer
class Sub extends Component {
componentDidMount(){
// 将子组件指向父组件的变量
this.props.onRef && this.props.onRef(this);
}
callback(){
console.log("执行我")
}
render(){
return (<div>子组件</div>);
}
}
class Super extends Component {
handleOnClick(){
// 可以调用子组件方法
this.Sub.callback();
}
render(){
return (
<div>
<div onClick={this.handleOnClick}>click</div>
<Sub onRef={ node => this.Sub = node }></Sub>
</div>)
}
}
Nach dem Login kopierenZusammenfassungEs gibt zwei Situationen, in denen eine übergeordnete Komponente eine Funktion einer untergeordneten Komponente aufruft.
Keine HOC-Verschachtelung von untergeordneten Komponenten: Es wird empfohlen, ref zum direkten Aufrufen zu verwenden.
Bei HOC-Verschachtelung: Es wird empfohlen, benutzerdefinierte zu verwenden Requisiten
- 【Verwandte Empfehlungen:
Redis-Video-Tutorial- ,
Programmierunterricht
】
import React, { Component } from 'react'; import { observer } from 'mobx-react' @observer class Sub extends Component { componentDidMount(){ // 将子组件指向父组件的变量 this.props.onRef && this.props.onRef(this); } callback(){ console.log("执行我") } render(){ return (<div>子组件</div>); } } class Super extends Component { handleOnClick(){ // 可以调用子组件方法 this.Sub.callback(); } render(){ return ( <div> <div onClick={this.handleOnClick}>click</div> <Sub onRef={ node => this.Sub = node }></Sub> </div>) } }
Bei HOC-Verschachtelung: Es wird empfohlen, benutzerdefinierte zu verwenden Requisiten
Das obige ist der detaillierte Inhalt vonSo rufen Sie die Methode der untergeordneten Komponente in der übergeordneten React-Komponente auf. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Der nicht blockierende und ereignisgesteuerte Knotendienst hat den Vorteil eines geringen Speicherverbrauchs und eignet sich sehr gut für die Verarbeitung massiver Netzwerkanforderungen. Unter der Voraussetzung massiver Anfragen müssen Probleme im Zusammenhang mit der „Speicherkontrolle“ berücksichtigt werden. 1. Der Garbage-Collection-Mechanismus und die Speicherbeschränkungen von V8 Js wird von der Garbage-Collection-Maschine gesteuert

Vue.js ist heute ein sehr beliebtes Framework in der Front-End-Entwicklung. Da sich Vue.js ständig weiterentwickelt, werden Unit-Tests immer wichtiger. Heute untersuchen wir, wie man Unit-Tests in Vue.js 3 schreibt, und stellen einige Best Practices sowie häufige Probleme und Lösungen vor.

Das Dateimodul ist eine Kapselung der zugrunde liegenden Dateioperationen, wie z. B. Lesen/Schreiben/Öffnen/Schließen/Löschen von Dateien, Hinzufügen usw. Das größte Merkmal des Dateimoduls besteht darin, dass alle Methoden zwei Versionen von **synchronem** und **bereitstellen. asynchron**, mit Methoden mit dem Suffix sync sind alle Synchronisationsmethoden, und diejenigen ohne sind alle heterogene Methoden.

Domänenübergreifend ist ein Szenario, das in der Entwicklung häufig vorkommt und auch ein häufig in Interviews diskutiertes Thema ist. Die Beherrschung gängiger domänenübergreifender Lösungen und der dahinter stehenden Prinzipien kann nicht nur unsere Entwicklungseffizienz verbessern, sondern auch in Vorstellungsgesprächen bessere Leistungen erbringen.

PHP und Vue: eine perfekte Kombination von Front-End-Entwicklungstools In der heutigen Zeit der rasanten Entwicklung des Internets ist die Front-End-Entwicklung immer wichtiger geworden. Da Benutzer immer höhere Anforderungen an das Erlebnis von Websites und Anwendungen stellen, müssen Frontend-Entwickler effizientere und flexiblere Tools verwenden, um reaktionsfähige und interaktive Schnittstellen zu erstellen. Als zwei wichtige Technologien im Bereich der Front-End-Entwicklung können PHP und Vue.js in Kombination als perfekte Waffe bezeichnet werden. In diesem Artikel geht es um die Kombination von PHP und Vue sowie um detaillierte Codebeispiele, die den Lesern helfen sollen, diese beiden besser zu verstehen und anzuwenden

Zu Beginn lief JS nur auf der Browserseite. Es war einfach, Unicode-codierte Zeichenfolgen zu verarbeiten, aber es war schwierig, binäre und nicht Unicode-codierte Zeichenfolgen zu verarbeiten. Und Binär ist das Datenformat der niedrigsten Ebene des Computer-, Video-/Audio-/Programm-/Netzwerkpakets

In Front-End-Entwicklungsinterviews decken häufige Fragen ein breites Themenspektrum ab, darunter HTML/CSS-Grundlagen, JavaScript-Grundlagen, Frameworks und Bibliotheken, Projekterfahrung, Algorithmen und Datenstrukturen, Leistungsoptimierung, domänenübergreifende Anfragen, Front-End-Engineering, Designmuster sowie neue Technologien und Trends. Interviewerfragen sollen die technischen Fähigkeiten, die Projekterfahrung und das Verständnis des Kandidaten für Branchentrends beurteilen. Daher sollten Kandidaten in diesen Bereichen umfassend vorbereitet sein, um ihre Fähigkeiten und Fachkenntnisse unter Beweis zu stellen.

Mit der Entwicklung der Internet-Technologie hat die Front-End-Entwicklung immer mehr an Bedeutung gewonnen. Insbesondere die Popularität mobiler Geräte erfordert eine Front-End-Entwicklungstechnologie, die effizient, stabil, sicher und einfach zu warten ist. Als sich schnell entwickelnde Programmiersprache wird die Go-Sprache von immer mehr Entwicklern verwendet. Ist es also möglich, die Go-Sprache für die Front-End-Entwicklung zu verwenden? Als Nächstes wird in diesem Artikel ausführlich erläutert, wie die Go-Sprache für die Front-End-Entwicklung verwendet wird. Werfen wir zunächst einen Blick darauf, warum die Go-Sprache für die Front-End-Entwicklung verwendet wird. Viele Leute denken, dass die Go-Sprache eine ist
