AngularJS: ngRoute non funziona

Sto cercando di far funzionare questo semplice routing e non riesco a capire quale sia il problema.

Questo è l’HTML:

 . . .  

Questo è il routing:

 var app = angular.module('app',[ 'ngRoute', 'ngSanitize' ]); app.config(['$routeProvider',function($routeProvider){ $routeProvider .when('/voip',{ templateUrl:'assets/templates/voip.html' }); }]); 

Il modello viene caricato se si specifica “altrimenti” come di seguito. Ho pensato che forse sto usando la syntax sbagliata nel mio attributo href, ma ho cercato ovunque e sembra che sia così che dovrebbe essere.

  .otherwise({ redirectTo:'/voip' }) 

Un’altra cosa è che se ascolto $routeChangeSuccess , l’evento viene triggersto, ma la vista non viene caricata.

Qualche idea?

È corretto perché stai usando angular 1.6 e c’è stato un cambiamento nel prefisso hash predefinito:

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.

Se in realtà non vuoi avere un prefisso hash, puoi ripristinare il comportamento precedente aggiungendo un blocco di configurazione alla tua applicazione:

appModule.config ([‘$ locationProvider’, function ($ locationProvider) {
$ LocationProvider.hashPrefix ( ”); }]); fonte

Quindi hai alcune opzioni:

1. Imposta HTML5mode true

 $locationProvider.html5Mode(true); 

e in html set base nell’intestazione html:

  

Infine cambia a

  

2. Usa il modo 1,6
Modificare

a

3. Torna al vecchio comportamento da 1.5 – imposta manualmente il prefisso hash

 app.config(['$locationProvider', function($locationProvider) { $locationProvider.hashPrefix(''); }]); 

prova ad usare punti esclamativi in ​​html5 + ajs 1.6.

per esempio invece di href = “# home” ….. scrivi href = “#! home”. Ha funzionato per me dopo 4 ore di grattarsi la testa.