Was ist die Bedeutung von
{...this.props}
Ich versuche es so zu benutzen
<div {...this.props}> Content Here </div>
Es heißt Spread-Attribute und hat zum Ziel, das Weitergeben von Requisiten zu erleichtern.
Stellen Sie sich vor, Sie haben eine Komponente, die N Eigenschaften akzeptiert. Diese weiterzugeben kann mühsam und unhandlich sein, wenn die Anzahl steigt.
<Component x={} y={} z={} />
Wickeln Sie sie stattdessen in ein Objekt ein und verwenden Sie die Spread-Notation
var props = { x: 1, y: 1, z:1 };
<Component {...props} />
Dadurch wird es in die Requisiten Ihrer Komponente entpackt, dh Sie verwenden es "nie" {... props}
in Ihrer render()
Funktion, nur wenn Sie die Requisiten an eine andere Komponente weitergeben. Verwenden Sie Ihre ausgepackten Requisiten wie gewohnt this.props.x
.
this.transferPropsTo
der in React 0.12.x veraltet war und in 0.13.x entfernt wird. Es ermöglicht natürlich eine viel fortgeschrittenere Verwendung, aber die einfache Übersetzung von React 0.11.xthis.transferPropsTo(<Foo />)
in<Foo {...this.props} />
ist für Personen, die diesen Übergang vornehmen , am nützlichsten.Es ist ES6
Spread_operator
undDestructuring_assignment
.Es ist gleich
Class Component
oder
Function component
refs
https://babeljs.io/docs/plugins/transform-object-rest-spread/
https://facebook.github.io/react/docs/components-and-props.html
quelle
Es wird dazu kompiliert:
Wie Sie oben sehen können, gibt es alle Requisiten an die
div
.quelle
Es ist eine ES-6-Funktion. Es bedeutet, dass Sie alle Eigenschaften von Requisiten in extrahieren
div.{... }
Der Operator wird verwendet, um Eigenschaften eines Objekts zu extrahieren.
quelle
Sie werden Requisiten in Ihrer untergeordneten Komponente verwenden
beispielsweise
wenn Ihre jetzt Komponente Requisiten ist
Sie können diese Requisiten in Ihrem Kind Compoenet verwenden
In Ihrer untergeordneten Komponente erhalten Sie alle übergeordneten Requisiten.
quelle