C'è una soluzione per questo scenario. Useremmo 1) una funzione nativa ui-router
e 2) un'impostazione di configurazione. A working example potrebbe essere osservato here.
1) Una caratteristica nativa di definizioni UI-router stato è:
Il url
non è necessaria. Lo stato potrebbe essere definito senza la sua rappresentazione in posizione.
2) Un ambiente di configurazione è:
percorso Stringa | Funzione Il percorso url a cui si desidera reindirizzare o una regola di funzione che restituisce il percorso dell'URL. La versione funzione viene passata due params: $ iniettori e $ localizzazione
Soluzione: combinazione di questi due. Avremmo state
senzaurl
e personalizzato otherwise
:
$stateProvider
.state('404', {
// no url defined
template: '<div>error</div>',
})
$urlRouterProvider.otherwise(function($injector, $location){
var state = $injector.get('$state');
state.go('404');
return $location.path();
});
Verificare che tutti in questo working example
fonte
2014-08-31 12:19:03
Questo ha funzionato come un fascino. Grazie @radim – Ray
soluzione brillante! grazie @Radim – plong0
questo è bello, grazie – Hoto