Javascript SammyJS路线没有/#/
我正在使用sammyJS和node.js制作一个应用程序。问题是:根据文档,我可以在路由的开始处添加#或不添加(Javascript SammyJS路线没有/#/,javascript,node.js,sammy.js,Javascript,Node.js,Sammy.js,我正在使用sammyJS和node.js制作一个应用程序。问题是:根据文档,我可以在路由的开始处添加#或不添加(/#/myroute/)。我所有的应用程序都是用sharp构建的,现在我想给路由添加参数(:arg0),除非我在开始添加#。这是“丑陋的”,最糟糕的是,我必须重构所有的应用程序 self.get(/\/browse\/(.*)/, function(context) {}); // Get 404 when accessing /browse/date self.get(/\#\/
/#/myroute/
)。我所有的应用程序都是用sharp构建的,现在我想给路由添加参数(:arg0
),除非我在开始添加#。这是“丑陋的”,最糟糕的是,我必须重构所有的应用程序
self.get(/\/browse\/(.*)/, function(context) {}); // Get 404 when accessing /browse/date
self.get(/\#\/browse\/(.*)/, function(context) {}); // Works when accessing #/browse/date
因此,为什么我必须把它放在这里?有没有办法将其删除。这也是您的节点服务器必须支持的:只有当用户导航到
/browse/something
时,Sammy才会处理URL的更改,而Sammy应用程序已经处于活动状态,但当它不处于活动状态时(例如,您正在重新加载页面或直接在浏览器中打开页面)请求由节点处理,它需要知道如何处理这些请求
如果您使用的是Express,您的路线可能如下所示:
app.get('/browse/', ...);
尝试将其更改为:
app.get('/browse/*', ...);