Les réponses ci-dessus ont l'explication correcte concernant la suppression du hachage de l'URL, mais lorsque vous changez le nom de l'URL, vous pouvez le faire. LocationStrategy
votre back-end sera affecté parce que le back-end ne comprend pas tous vos Angular 2
Itinéraires. Voici les étapes à suivre pour supprimer le hachage avec le support back-end.
1) Modifier Angular pour utiliser PathLocationStrategy
@NgModule({
.....
providers: [
// Below line is optional as default LocationStrategy is PathLocationStrategy
{provide: LocationStrategy, useClass: PathLocationStrategy}
]
})
2) Changez la base Href dans index.html, Angular2 gérera toutes les routes post base Href.
<base href="http://stackoverflow.com/app-context/">
Par exemple
<base href="http://stackoverflow.com/app/">
3) Sur le serveur dorsal, nous devons rendre le fichier index.html pour toute requête présentant le modèle suivant
"/app/**" - Render index.html for any request coming with "/app/**" pattern
index.html
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>My App</title>
<base href="http://stackoverflow.com/app/">
</head>
<body>
<app-root>Loading...</app-root>
<script type="text/javascript" src="vendor.bundle.js"></script>
<script type="text/javascript" src="main.bundle.js"></script>
</body>
</html>