Die Lösung für die Seite, die nach Routenänderungen nach Reaktionssprüngen nicht aktualisiert wird

Die Lösung für die Seite, die nach Routenänderungen nach Reaktionssprüngen nicht aktualisiert wird

Frage

Es scheint viele Gründe für dieses Problem zu geben. Mein Problem ist, dass die URL mit Parametern nicht aktualisiert werden kann. In der Router-Version 5.0 ist die Verwendung der mit Router verknüpften Komponente zum Springen zur Seite wie folgt

Bildbeschreibung hier einfügen

Routing-Code

Bildbeschreibung hier einfügen

Lösung

Durch das Hinzufügen eines Schlüssels zum obersten Element der Routing-Komponente wird die Erkennung der Route verbessert, da normale Sprünge anhand des Pfads identifiziert werden. Wenn der Pfad jedoch Parameter enthält, kann die Route nicht genau identifiziert werden. Beim Anspringen einer Seite wird jedoch für jede Adresse ein Schlüssel zum Lokalisierungsobjekt hinzugefügt. Drucken Sie wie folgt

 // Komponente montieren componentDidMount() {
    Konsole.log(diese.Eigenschaften.Standort);
  }

Bildbeschreibung hier einfügen

Wir können die Route genau lokalisieren, indem wir diesen Schlüssel an das oberste Element der Route binden.

 rendern() {
    zurückkehren (
      {/*Das ist der Schlüssel*/}
      <div Schlüssel={this.props.location.key}>
          <Schalter>
            <Route exakter Pfad="/" component={Home} />
            <Route exakter Pfad="/products/:id" component={Products} />
            <Route exakter Pfad="/about" component={About} />
            <Route exakter Pfad="/Lösung" Komponente={Lösung} />
            <Route
              genau
              Pfad="/Lösungsdetails/:id"
              Komponente={SolutionDetails}
            />
            <Route exakter Pfad="/download" component={Download} />
            <Routenpfad="/about" Komponente={Download} />
            <Routengenauer Pfad="/details/:id" component={Details} />
            <Routenpfad="/Kontakt" Komponente={Kontakt} />
            <Routenkomponente={ErrorPage} />
          </Schalter>
      </div>
    );
  }

Möglicherweise stellen Sie jedoch fest, dass this.props ein leeres Objekt {} ist. Das kann daran liegen, dass Sie withRouter nicht zum Zuordnen der Komponente verwendet haben. Ordnen Sie sie einfach zu. Beachten Sie, dass app.js nicht verknüpft werden kann. withrouter kann nur mit Routing-Komponenten oder Unterkomponenten von app.js verknüpft werden.

importiere React, {Komponente} von „react“;
importiere { mit Router } von „react-router“;

Klasse Router erweitert Komponente {
 /**
  * Lebenszyklusfunktion */
 // Komponente montieren componentDidMount() {
   Konsole.log(diese.Eigenschaften.Standort);
 }
 rendern() {
   zurückkehren (
     <div Schlüssel={this.props.location.key}>
     </div>
   );
 }
}
exportiere Standard mit Router(Router);

Dies ist das Ende dieses Artikels über die Lösung des Problems, dass die Seite nach Routenänderungen nach React Jumps nicht aktualisiert wird. Weitere verwandte Inhalte zum Thema „Seite wird nach React Jumps nicht aktualisiert“ finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder durchsuchen Sie die verwandten Artikel weiter unten. Ich hoffe, Sie werden 123WORDPRESS.COM in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Detaillierte Erklärung der Lösung für das Problem, dass die Seite nicht aktualisiert wird, wenn sich der URL-Parameter in React-Router ändert
  • Lösung für das 404-Problem der React-Router-Browserverlaufsaktualisierungsseite

<<:  Ubuntu 18.04 installiert pyenv, pyenv-virtualenv, virtualenv, Numpy, SciPy, Pillow, Matplotlib

>>:  Ausführliche Erklärung zu MySQL vom Einstieg bis zum Aufgeben - Installation

Artikel empfehlen

Tutorial zur Installation von MySQL unter Linux

Inhaltsverzeichnis 1. Löschen Sie die alte Versio...

MySQL-Optimierungsstrategie (empfohlen)

Zusammenfassend: 1. Berücksichtigen Sie die Leist...

Einige Frontend-Grundlagen (HTML, CSS) aus der Praxis

1. Die Div-CSS-Maushandform ist Cursor:Zeiger; 2. ...

Eine kurze Diskussion über Flex-Layout und Skalierungsberechnung

1. Einführung in Flex Layout Flex ist die Abkürzu...

Einfaches Grafik-Tutorial zur Verwendung von Adobe Brackets

Adobe Brackets ist eine Open Source-, einfache un...

JS implementiert die Append-Funktion von jQuery

Inhaltsverzeichnis Zeig mir den Code Testen Sie d...

Detaillierte Hinweise zu React für Einsteiger

Inhaltsverzeichnis 1. Grundlegendes Verständnis v...

Detaillierte Erläuterung der MySQL-Lösung zur USE DB-Überlastung

Wenn wir auf einen Fehler stoßen, denken wir oft ...

HTML-Versionsdeklaration DOCTYPE-Tag

Wenn wir den Quellcode einer normalen Website öff...

Tutorial zur Installation und Konfiguration der Version MySQL 5.7.23

Ich habe drei Stunden gebraucht, um MySQL selbst ...

So erstellen Sie mit Photoshop ein Web-Drahtgittermodell

Dieser Beitrag stellt eine Reihe kostenloser Phot...