Marionette 具有历史记录的应用 2 向导航 api

Marionette app 2 way navigation with history api

我有 node.js 服务器应用程序(其余 API 服务)。 我在客户端也有 Backbone + Marionette(对于我的服务器端 RESTful 应用程序)多页面应用程序。 我目前有 Marionette 导航,它与 domain.com/#feedbacks (pages are render on client side with ajax data). But I also want to add serverside navigation e.g. domain.com/feedbacks 这样的链接(对于 google 和其他搜索引擎)工作得很好。

问题是:如何匹配服务器端和客户端导航?

Mb 我应该尝试为页面上的所有链接添加事件处理程序,这将执行类似 Backbone.history.navigate("/feedbacks") 的操作?但是我有很多不同的哈希链接(#feedbacks)... Mb 有更优雅的解决方案吗?谢谢。

我当前的 marionette 路由器:

var AppRouter = Backbone.Blazer.Router.extend({
    routes: {
      '': new HomeRoute(),
      'sell': new SellRoute(),
      'login': new LoginRoute(),
      'feedbacks': new FeedbacksRouter(),
      'product/:id': new ProductRoute(),
      'profile/:id': new UserRoute()
    }
  })

我只需要使用:

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

而不是:

Backbone.history.start();

它使 backbone 路由在没有 # 符号的情况下工作