2012-02-20 15 views
17

Chcę mieć możliwość określenia podstawowego adresu URL dla wszystkich moich ścieżek rozwoju. Niektórzy z programistów mają skonfigurowaną maszynę do pracy poza podkatalogami zamiast z aplikacji znajdującej się w webroot. Chciałbym zdefiniować te trasy tylko raz. Zamiast: trasach: { "Toms-podkatalogu/użytkownicy": "init_users" } Chciałbym:Definiowanie podstawowego adresu URL w routerze Backbone.js

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

i być w stanie określić baseURL dla tej instalacji, więc może łatwo uczynić go działaj w poprzek instalacji.

Teraz wymuszam je definiując obiekt trasy, używając składni nawiasów, aby zachować klucze dynamiczne i przypisać je do właściwości tras na trasie. Zastanawiałem się, czy istnieje czystszy sposób.

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

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

Więc co to za pytanie? – GoldenNewby

Odpowiedz

42

Można użyć Backbone.history.start jak ten

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

tego właśnie szukałem. Dziwne, myślałem, że próbowałem tego. Dzięki. –

Powiązane problemy