使用Backbone路由器解析url params - 正则表达式示例

unj*_*ust 5 router backbone.js

我正在使用Backbone.js,我有一个url到我的集合后跟一个参数字符串 - 参数可以按任何顺序出现,参数的数量可以变化.

mywebsite.com/?orderBy=recent&author=Smith

mywebsite.com/?author=Smith&type=Horror,Romance

所以在某种程度上/:param并不理想,除非我定义了它们必须在url中的顺序:

/:ORDERBY /:作者/:类型...

并允许它们中的一些以某种方式为空.

设置它的最佳方法是什么?带正则表达式的路由器能解决我的问题吗?如果是这样,我找不到使用regex将多个参数传递给Backbone中的路由功能的路由器的示例.

谢谢!

Pre*_*vLe 9

我有同样的问题.这是一个完成工作的骨干插件:https: //github.com/jhudson8/backbone-query-parameters

干杯!


Tho*_*vis 4

我不认为您的 url 参数应该映射查询字符串,就像restFul 接口不映射查询字符串一样。

/cars?filterby=12 would be more correct then some sort of /cars/filterby/12
Run Code Online (Sandbox Code Playgroud)

我知道休息不是应用程序路线,但它们仍然有相同的警告。

jQuery 包含一个$.param可以轻松处理查询字符串的函数,而 jQuery BBQ 包含一个$.deparam可以解析查询字符串的 util

保持路线简单

mywebsite.com/#/authors?orderBy=recent....
Run Code Online (Sandbox Code Playgroud)