我有一个PHP Slim和Backbone.JS设置,我的所有代码现在都没有任何问题。
我唯一的问题是我使用Grunt.JS将我的代码缩小为一个文件并加载到每个页面的底部。
所以我的Backbone渲染调用会在我的网站中的所有页面上触发,而不仅仅是我希望它运行的路径。
我现在尝试使用Backbones Router在我希望它运行的路径上触发渲染,我不认为这会起作用而且它没有因为我使用PHP slim作为路由代理,当然还有Backbone需要 /#/
路径路径。
现在,当我设置了Backbone路由时,我确实试图让PHP Slim将 /#/
路由重定向到干净的PHP Slim路由路径。当我使用以下代码时,PHP Slim完全不喜欢这个,
$app->get('/#/MYPATHHERE', function () use ($app) {
$app->redirect('/REALLPATHTOGOTO');
});
它给了我一个PHP Slim错误,看起来PHP Slim不喜欢 /#/
路由。
那么这样做的最佳方法是什么?
我在想我可以在PHP页面中调用render函数,我将获取PHP Slim来在我选择的路径上呈现?或者有更好的方法吗?
由于
格伦。
答案 0 :(得分:1)
好的,这可以与Backbone一起工作,做了一些更多的研究,并在Backbone.history.start上将pushState设置为true,然后它可以在不需要哈希路由的情况下工作。