骨干路由器忽略搜索路由

时间:2013-03-06 17:39:32

标签: javascript backbone.js routes

需要一些帮助!

我正在尝试让我的Backbone路由器匹配此路由: http://localhost:5150/search_results?utf8=%E2%9C%93&keywords=&location=Norfolk%2C+VA&commit=Search

..没有任何工作。很沮丧!
这是我在Backbone的第一次尝试,所以建议会很棒。

 '/search_results?*': 'search_results'
  # NOPE

 '/search_results?foo=:foo': 'search_results'
  # NOPE

 '/search_results?foo*': 'search_results'
  # NOPE

 '/search_results?*queryString': 'search_results'
  # NOPE

 'search_results?*queryString': 'search_results'
  # NOPE

 'search_results?*': 'search_results'
 # NOPE

 'search_results?foo=:foo': 'search_results'
 # NOPE

 'search_results?foo*': 'search_results'
 # NOPE

'/search_results': 'search_results'
 # NOPE SERIOUSLY??

 '/search_results': 'search_results'
 # WTF!!!!!!!!!!!!!!!!!!!

 ':search_results?*': 'search_results'
 # NOPE

 ':search_results?:querystring': 'search_results'
 # NOPE

2 个答案:

答案 0 :(得分:1)

你试过这个吗?它应该在路线中没有前导冒号,散列或斜线的情况下工作。

'search_results(?:queryString)': 'search_results'

答案 1 :(得分:0)

Okey ...据我所知,骨干路由通常按#关键字检测路径路径。如果我错了,请纠正我。因此,为了使事情能够适用于您的情况,请执行以下操作。

1)输入#keyword作为#/ search_results?....

2)现在将您的路线定义为“search_results?:queryString”

这应该有效:)