2012-02-20 19 views
17

Desidero essere in grado di specificare un URL di base per tutte le mie route per lo sviluppo. Alcuni sviluppatori hanno l'installazione delle macchine per lavorare fuori dalle sottodirectory invece che dall'applicazione seduta al webroot. Vorrei definire questi percorsi una sola volta. Invece di: percorsi: { "tom-sottodirectory/utenti": "init_users" } vorrei:Definire un URL di base nel router Backbone.js

routes: { 
    "/users": "init_users" 
} 

ed essere in grado di specificare un baseurl per tale impianto così ho potuto facilmente fare lavorare su installazioni.

In questo momento li sto forzando definendo un oggetto del percorso utilizzando la sintassi della parentesi per mantenere le chiavi dinamiche e assegnarle alla proprietà rotte all'interno della rotta. Mi stavo chiedendo se c'è un modo più pulito.

my_routes = {}; 
my_routes[window.webroot + '/users'] = 'init_users'; 

MyRoute = Backbone.Router.extend({ routes: my_routes }) 
+0

Allora, qual è la domanda? – GoldenNewby

risposta

42

È possibile utilizzare Backbone.history.start come questo

Backbone.history.start({ 
    pushState: true, 
    root: "/public/search/" 
}); 
+0

è quello che stavo cercando. Strano, pensavo di aver provato questo. Grazie. –

Problemi correlati