删除主干查询字符串

Remove backbone query string

本文关键字:字符串 查询 删除      更新时间:2023-09-26

我有一个Backbone应用程序,我想从传递给函数的参数中删除查询字符串。

以下是一些路线:

routes:
    '': 'home'
    'categories/:id/:sid(/)': 'subcategories'
    'categories/:id(/)': 'categories'

现在,在categories(或subcategories)函数中,最后一个参数还包括查询字符串,这是我不想要的。我试过以下几种:

  • "categories/:id([''?]{1}:q)":"类别"
  • "categories/:id([''?]{0,1}:q)":"类别"
  • '类别/:id([''?]?:q)':'类别'

但是对于像categories/1?page=2这样的url,:id1?page=2

如何删除?后面的内容?

我知道主干查询字符串,但我不想使用它。

我认为有一种方法可以处理这个问题。如果您访问链接(类别/1?page=2分类/1),

像这样写路由器:

'categories/:id'?:page' : 'categories'
'categories/:id' : 'categories'
categories: function(id){}

id参数将为"1",页面将为"page=2",但您可以弃用它。

请注意两个路由器的顺序