I miei URL su un progetto AngularJS sono cambiati da localhost:3000/admin#/
a localhost:3000/admin#!/
Dall’ultima volta che ho lavorato al mio progetto …
Niente trovato sul web, qualcuno sa che cos’è questo?
È nuovo da AngularJS 1.6, che ha aggiunto un nuovo prefisso hash.
A causa di aa077e8 , il prefisso hash predefinito utilizzato per gli URL hash-bang
$location
è stato modificato dalla stringa vuota (''
) al bang ('!'
). Se la tua applicazione non utilizza la modalità HTML5 o è in esecuzione su browser che non supportano la modalità HTML5 e non hai specificato il tuo prefisso hash, gli URL del lato client ora contengono un!
prefisso. Ad esempio, anzichémydomain.com/#/a/b/c
l’URL diventeràmydomain.com/#!/a/b/c
.
Fonte qui per ulteriori informazioni.
Se vuoi rimuovere questo prefisso, aggiungi questo codice alla tua configurazione:
appModule.config(['$locationProvider', function($locationProvider) { $locationProvider.hashPrefix(''); }]);
Tutti stanno proponendo di rimuovere il prefisso, ma potresti anche semplicemente aggiungere un !
agli URL lato client (se non si utilizza la modalità HTML5, cosa che probabilmente si fa se si è qui).
Quindi, nei tuoi file lato client , aggiorna gli URL come questo:
#/foo/bar
> #!/foo/bar
In Angular 1.6.0, l’hashPrefix predefinito è stato cambiato in !
. Vedi il commit relativo e la voce del log delle modifiche .