Si consideri il seguente:React-Router: No Route non trovata?
var AppRoutes = [
<Route handler={App} someProp="defaultProp">
<Route path="/" handler={Page} />
</Route>,
<Route handler={App} someProp="defaultProp">
<Route path="/" handler={Header} >
<Route path="/withheader" handler={Page} />
</Route>
</Route>,
<Route handler={App} someProp="defaultProp">
<Route path=":area" handler={Area} />
<Route path=":area/:city" handler={Area} />
<Route path=":area/:city/:locale" handler={Area} />
<Route path=":area/:city/:locale/:type" handler={Area} />
</Route>
];
Ho un modello di App, un HeaderTemplate, e insieme con parametri di percorsi con lo stesso gestore (nel modello di applicazione). Voglio essere in grado di servire 404 percorsi quando qualcosa non viene trovato. Ad esempio,/CA/SanFrancisco dovrebbe essere trovato e gestito da Area, mentre/SanFranciscoz dovrebbe 404.
Ecco come posso testare rapidamente i percorsi.
['', '/', '/withheader', '/SanFranciscoz', '/ca', '/CA', '/CA/SanFrancisco', '/CA/SanFrancisco/LowerHaight', '/CA/SanFrancisco/LowerHaight/condo'].forEach(function(path){
Router.run(AppRoutes, path, function(Handler, state){
var output = React.renderToString(<Handler/>);
console.log(output, '\n');
});
});
Il problema è/SanFranciscoz è sempre gestita dalla pagina di area, ma voglio che 404. Inoltre, se posso aggiungere un NotFoundRoute alla prima configurazione percorso, tutte le pagine Area 404.
<Route handler={App} someProp="defaultProp">
<Route path="/" handler={Page} />
<NotFoundRoute handler={NotFound} />
</Route>,
Cosa sto sbagliando?
Ecco un elenco che può essere scaricato e sperimentato.
https://gist.github.com/adjavaherian/aa48e78279acddc25315
se hai un'app di redux come fai: ' 'in questa sintassi:' const routes = { component: Main, childRoutes: [ {path: '/', componente: Home}, ], indexRoute: { componenti: Principale, }, }; ' –
tatsu
se si desidera impostare puntelli per il 404-Compontent utilizzare questo codice: ' } />' –