AngularJS-Routing ohne den lästigen Hashbang (#)
In AngularJS können Sie mit Routing verschiedene Zustände und Ansichten für Ihre Anwendung definieren. Wenn Sie $routeProvider zum Deklarieren von Routing-Regeln verwenden, stellen Sie möglicherweise fest, dass URLs im Browser ein Hash-Symbol (#) enthalten. Beispielsweise könnte die Navigation zur Seite „Test“ wie „app/#/test“ anstelle von „app/test“ aussehen.
Warum der Hash?
AngularJS verwendet das Hash-Symbol für Nicht-HTML5-Browser, um HTTP-Aufrufe an den Server zu verhindern. Ohne den Hash würden ältere Browser Anfragen an den Server an der angegebenen href senden, was für die clientseitige Navigation nicht erwünscht ist.
Hashbang vermeiden
Zu vermeiden Für den Hashbang können Sie die Methode $locationProvider.html5Mode(true) verwenden, um AngularJS anzuweisen, die HTML5-Verlaufs-API zu verwenden, sofern verfügbar. Diese API bietet eine bessere URL-Verarbeitung und ermöglicht die Verwendung sauberer URLs ohne Hash.
Unterstützte Browser
HTML5-Verlaufs-API wird von den meisten modernen Browsern unterstützt. Hier ist eine Liste der unterstützten Browser:
Beispiel
Um den HTML5-Modus in Ihrer AngularJS-Anwendung zu aktivieren, fügen Sie einfach den folgenden Code zu Ihrer Konfiguration hinzu:
app.config(function($locationProvider) { $locationProvider.html5Mode(true); });
Einmal Wenn Sie den HTML5-Modus aktivieren, werden Sie feststellen, dass der Hashbang aus Ihren URLs entfernt wird, was für Sie ein benutzerfreundlicheres und ästhetisch ansprechenderes Erlebnis bietet Benutzer.
Das obige ist der detaillierte Inhalt vonWie kann ich den lästigen Hashbang (#) aus dem AngularJS-Routing entfernen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!