我的路由器中有这个

# 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

有人可以帮助我了解我在做什么错吗?非常感谢您的帮助!

最佳答案

尝试href="/#photography"吗?

希望能帮助到你

关于javascript - 页面上的主干js路由加载/刷新而无哈希,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30426842/

10-09 14:03