2016-08-02 4 views
0

In meinem Winkel Projekt nicht vorhanden ist, bin ich die Lösung der meisten der Routen von einem WildcardFang Winkel Wildcard Route, wenn es nicht

function getTemplateUrl (route) { 
    return '/views/' + route.page + '.html'; 
} 
.when('/:page', { templateUrl : getTemplateUrl }) 
.when('/:page/:edit', { templateUrl : getTemplateUrl }) 
.otherwise({redirectTo: '/dashboard'}); 

das einzige Problem, das heißt, wenn die Route nicht existiert, es wird immer noch versuchen, die Seite zu laden, nicht die otherwise-Funktion, und lädt die Seite immer wieder, wodurch eine Endlosschleife entsteht.

Kann ich irgendwie überprüfen, ob die Route existiert?

+0

Sie nicht Strecke noch für 'dashboard' hinzugefügt haben. –

Antwort

0

Wenn Sie alle anderen Seiten dashboard umleiten möchten, sollten Sie Armaturenbrett Route angeben, bevor otherwise

function getTemplateUrl (route) { 
    return '/views/' + route.page + '.html'; 
} 
.when('/:page', { templateUrl : getTemplateUrl }) 
.when('/:page/:edit', { templateUrl : getTemplateUrl }) 
.when('/dashboard', { templateUrl : getTemplateUrl }) 
//add dashboard route before otherwise 
.otherwise({redirectTo: '/dashboard'}); 
+0

aber ': page' wird sein, was'/dashboard' entspricht, also wird es nie zu dieser hartcodierten Dashboardroute kommen, genauso wie es sonst nicht geht. –

Verwandte Themen