In AngularJS können Sie mit $routeProvider Routing-Regeln für Ihre Anwendung definieren. Standardmäßig enthalten diese URLs einen Hash (#) im Format app/#/test.
Der Hash wird als Fallback für Browser verwendet, die dies tun unterstützt nicht die History-API von HTML5. In diesen Browsern löst das Navigieren zu einer URL mit einem Hash ein clientseitiges Ereignis anstelle einer HTTP-Anfrage an den Server aus. Dadurch kann AngularJS das Routing übernehmen und verhindern, dass der Server unnötig angegriffen wird.
Um die Verwendung des Hashs in URLs zu vermeiden, können Sie den $locationProvider.html5Mode(true) verwenden. Konfiguration. Dadurch wird AngularJS angewiesen, die HTML5-Verlaufs-API zu verwenden, sofern verfügbar.
Hier ein Beispiel:
app.config(function($locationProvider) { $locationProvider.html5Mode(true); });
Die HTML5-Verlaufs-API wird nur in modernen Browsern unterstützt . Eine Liste der unterstützten Browser finden Sie auf der Can I Use-Website: http://caniuse.com/#feat=history
Wenn Sie ältere Browser unterstützen müssen, müssen Sie den Hash in Ihrem behalten URLs oder stellen Sie ein Polyfill für die History-API bereit.
Das obige ist der detaillierte Inhalt vonWie kann ich den Hash von URLs im AngularJS-Routing entfernen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!