如何使用params定义和触发Backbone路由?

时间:2015-09-08 21:42:59

标签: javascript backbone.js routes

我有以下路线:

var Workspace = Backbone.Router.extend({

  routes: {
    "": "index"
  },

  index: function() {
    ...
  }       
});

现在我可以像Backbone.history.navigate('', true);那样触发这条路线,一切正常。但现在我需要将GET参数添加到该路由器,以便可以触发并处理这样的路由:

var Workspace = Backbone.Router.extend({

  routes: {
    "?:query": "index"
  },

  index: function(query) {
    ...
  }       
});

但遗憾的是,当我触发index

时,我的Backbone.history.navigate('?needShowPopup=true', true);回调无法执行

我应该如何定义和触发路由以传递和处理GET路由的index参数?

1 个答案:

答案 0 :(得分:0)

我会这样做

var Workspace = Backbone.Router.extend({

  routes: {
    "*": "index"
  },

  index: function() {
    var query = location.search;
    // work with query
  }       
});

如果您遇到问题,请告诉我。