【问题标题】:Backbone Route parameter not working without hash骨干路由参数在没有哈希的情况下不起作用
【发布时间】:2015-01-19 22:35:34
【问题描述】:

我在将我的应用程序路由到如下路线时遇到问题:

"list/:id": 'list'

我的网页转到,例如列表/子页面,我有一个空白页面。 当我使用哈希时,它被很好地重定向,比如#list/subpage

我的骨干开始:

Backbone.history.start({ pushState: true });

我的 .htaccess :

<ifModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php [L]
</ifModule>

可能出了什么问题?如果您需要更多代码,请告诉我

【问题讨论】:

    标签: javascript .htaccess backbone.js


    【解决方案1】:

    这就是路由在前端的工作方式。如果没有哈希,应用程序会尝试访问服务器上不存在的路由。哈希指定路由将发生在客户端上。

    这可能会给你一个更好的主意:http://backbonetutorials.com/what-is-a-router/

    【讨论】:

    • 我应该被重定向到根目录,对吧?即使我在“子文件夹”中?
    • 我不太明白,抱歉。如果您尝试访问服务器上的错误目录,除非服务器配置为这样做,否则您将不会被正确重定向。
    • 当我点击 /list 时,它正在工作。但是当我点击 /list/ 或 /list/[something] 时,我没有重定向到索引
    • 是的,因为这不是客户的工作。哈希之前的任何内容都将由服务器处理。如果服务器上没有东西可以处理该重定向,您将无法获得想要的结果。
    猜你喜欢
    • 2014-04-30
    • 1970-01-01
    • 2013-10-16
    • 2023-03-18
    • 1970-01-01
    • 1970-01-01
    • 2015-02-26
    • 2021-09-03
    • 2012-04-05
    相关资源
    最近更新 更多