brauchen Wir haben selbst eine Komponente geschrieben. Wenn wir auf die Komponente verweisen, möchten wir Inhalt in die Komponente schreiben, und der geschriebene Inhalt kann von der Komponente erkannt und gesteuert werden. Studenten, die Vue verwendet haben, werden sicherlich sofort an Slots denken. React unterstützt auch Slots. Als Nächstes verwenden wir React, um eine Komponente zu entwickeln, die Slots unterstützt. Kernidee Die drei von der übergeordneten Komponente an die untergeordnete Komponente übergebenen Divs werden standardmäßig über Props an die untergeordnete Komponente übergeben, und dann können wir die Darstellung der untergeordneten Elemente in der untergeordneten Komponente steuern. Kerncode // 015 importiere React von „react“ unter Verwendung von Slots; importiere ReactDOM von „react-dom“; // Übergeordnete Komponentenklasse ParentDom erweitert React.Component { Konstruktor(Requisiten) { super(Requisiten) dieser.Zustand = { heardData: "Headerdaten", footData: "Bodendaten", contentData: "Inhaltsdaten" } } componentDidMount() { } rendern() { zurückkehren ( <div> <h1>015Slots verwenden</h1> <Kinderdom> <div data-position="heard" >Dies ist die Kopfzeile</div> <div data-position="content" >Dies ist der Inhalt丨{this.state.contentData}</div> <div data-position="foot" >Das ist die Unterseite</div> </ChildDom> </div> ) } } // Untergeordnete Komponentenklasse ChildDom erweitert React.Component { Konstruktor(Requisiten) { super(Requisiten) } rendern() { lass gehört werden, Inhalt, Fuß; diese.Requisiten.Kinder.fürJedes(Element =>{ wenn(item.props['data-position'] == 'gehört'){ gehört = Artikel }sonst wenn(item.props['data-position'] == 'content'){ Inhalt = Artikel }sonst wenn(item.props['data-position'] == 'foot'){ Fuß = Artikel } }) zurückkehren ( <div > <p>Ich bin eine Unterkomponente</p> <div Klassenname="gehört"> {gehört} </div> <div Klassenname="Inhalt"> {Inhalt} </div> <div Klassenname="Fuß"> {Fuß} </div> </div> ) } } Standardfunktion exportieren () { ReactDOM.render( <ParentDom />, document.querySelector("#beispiel15") ); } Anzeigeeffekt Zwei Möglichkeiten zum Implementieren von Slots in ReactDa der in der React-Komponente geschriebene Inhalt in Props gemountet wird, kann dies verwendet werden, um eine Slot-Funktion ähnlich der in Vue zu implementieren. Dies ist der äußerste Code importiere React, {Komponente} von 'react' NavBar aus „./NavBar“ importieren importiere NavBar2 aus './NavBar2' exportiere Standardklasse App erweitert Komponente { rendern() { zurückkehren ( <div> <Navigationsleiste> <span>aaa</span> <strong>bbb</strong> <a href="/#" rel="externes Nofollow" rel="externes Nofollow" >ccc</a> </NavBar> <NavBar2 linker Steckplatz={<span>aaa</span>} Mittelschlitz={<strong>bbb</strong>} Rechteslot={<a href="/#" rel="external nofollow" rel="external nofollow" >ccc</a>}/> </div> ) } } 1. Verwenden Sie this.props.children[index] importiere React, {Komponente} von 'react' importiere './style.css' exportiere Standardklasse NavBar erweitert Komponente { rendern () { zurückkehren ( <div Klassenname="Navigationsleiste"> <div Klassenname="nav-links"> {diese.props.children[0]} </div> <div Klassenname="Navigationszentrum"> {diese.props.children[1]} </div> <div Klassenname="nav-rechts"> {this.props.children[2]} </div> </div> ) } } 2. Verwenden Sie direkte Benennung importiere React, {Komponente} von 'react' importiere './style.css' exportiere Standardklasse NavBar erweitert Komponente { rendern () { const {leftslot, centerslot,rightslot} = this.props zurückkehren ( <div Klassenname="Navigationsleiste"> <div Klassenname="nav-links"> {linker Slot} </div> <div Klassenname="Navigationszentrum"> {Mittelschlitz} </div> <div Klassenname="nav-rechts"> {Rechtslot} </div> </div> ) } } Dies ist das Ende dieses Artikels zur Verwendung von React-Slots. Weitere relevante Inhalte zu React-Slots finden Sie in früheren Artikeln auf 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:
|
<<: So verbergen und entfernen Sie Bildlaufleisten in HTML
>>: So erzielen Sie mit CSS einen Daten-Hotspot-Effekt
Sie können es direkt in der Linux-Shell-Umgebung ...
MySql Nullfeldbeurteilung und IFNULL-Fehlerverarb...
Zabbix erkennt automatisch Regeln zur Überwachung...
Wenn eine Website im Breitbildformat ist, ziehen ...
Kommunikation zwischen Containern 1. Netzwerkfrei...
Portainer-Einführung Portainer ist ein grafisches...
Vor Kurzem hat Oracle die öffentliche Verfügbarke...
1. Normale Hintergrundunschärfe Code: <Stil>...
<div Klasse="Box"> <img /> ...
OBS studio ist cool, aber JavaScript ist cooler. ...
Vor kurzem habe ich einen solchen Effekt implemen...
Inhaltsverzeichnis Definition Konstruktorkörper s...
In diesem Artikel wird versucht, eine Demo zur Si...
1. Funktionseinführung sed (Stream EDitor) ist ei...
Vorwort In diesem Artikel wird hauptsächlich besc...