Sammy - 任意数量的路径部分?

时间:2014-02-26 23:53:30

标签: sammy.js

我有一组级联下拉列表,其中一个值定义下一个的选项。由于各种原因,我的应用程序在url路径中表示它比url args更有意义。所以我想要像

这样的网址
mysite/#/Supermarkets/Produce/Apples

Supermarkets不是下拉菜单,ProduceApples。诀窍是我提前不知道路径哈希有三个部分;第一部分始终存在,但只有在路径的第一个/Supermarkets/部分结算后才知道有两个(或三个或一个或零)下拉列表的事实。

我不知道如何用sammy来解决这个问题。它甚至支持这种情况吗?

1 个答案:

答案 0 :(得分:0)

您可以使用参数创建路线。然后params对象访问参数。我尝试了下面适合我的代码:

var app = $.sammy('header', function () {

    //this allows us to use the sammy templates
    this.use('Template');

    //load header template
    this.get('/Supermarkets/:type/:item', function (context) {
        alert(this.params['type']);
        alert(this.params['item']);
    });


});
$(document).ready(function (){
    app.run();
});

所以现在如果url是/ Supermarkets / Produce / Apples,我将获得两个警报,一个用于类型参数,一个是Produce,一个用于返回Apples的item参数。

相关问题