在Backbone.js路由器中定义基本URL

Evi*_*uck 17 javascript backbone.js

我希望能够为我的所有开发路线指定基本URL.一些开发人员拥有机器设置来处理子目录而不是坐在webroot上的应用程序.我想只定义一次这些路线.而不是:routes:{"toms-subdirectory/users":"init_users"}我想:

routes: {
    "/users": "init_users"
}
Run Code Online (Sandbox Code Playgroud)

并且能够为该安装指定baseurl,以便我可以轻松地使其在安装中工作.

现在我通过使用括号语法定义路由对象来强制它们来保留动态密钥并将其分配给路由中的routes属性.我想知道是否有更清洁的方式.

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

MyRoute = Backbone.Router.extend({ routes: my_routes })
Run Code Online (Sandbox Code Playgroud)

abr*_*ham 42

您可以像这样使用Backbone.history.start

Backbone.history.start({
    pushState: true,
    root: "/public/search/"
});
Run Code Online (Sandbox Code Playgroud)