我的路由器里有这个
# ROUTING
App.Router = Backbone.Router.extend(
routes:
'': 'homePage'
'photography': 'photographyPage'
'about': 'aboutPage'
'contant': 'contantPage'
initialize: ->
that = this
@route 'photography', 'photographyPage', ->
that.photographyPage()
pageWrapper = $('#pageWrapper')
content = $('#content')
homePage: ->
console.log 'homepage'
photographyPage: ->
console.log 'photography'
)在我启动路由器之后
new (App.Router)
Backbone.history.start
pushState: true在我的html中我有这个
<nav>
<a href="/photography" class="inbound-link">Photography</a>
<a href="/about" class="inbound-link">About</a>
<a href="/contact" class="inbound-link">Contact</a>
</nav>我能够导航到上面的链接刚刚好。但是我遇到了一个问题,如果我在http://website.com/photography登陆并刷新页面,就会发现404不存在。或者,如果我直接去那个网址,我也能得到404。我尝试了这个路由http://website.com/#/photography,但是当它加载它时,它去掉了#,用http://website.com/photography替换了它。
有人能帮我明白我做错了什么吗?非常感谢您的帮助!
发布于 2015-05-25 12:12:03
试试href="/#photography"?
希望它能帮上忙
发布于 2015-05-26 15:02:11
问题是,您正在从您的HTTP服务器请求路径/photography,而它没有找到正确的文件。
您需要将服务器配置为为可能请求的任何(或特定的)路径提供html文件。
根据服务器(apache、nginx等)的不同,正确的方法会有所不同。
https://stackoverflow.com/questions/30426842
复制相似问题