萨米的回调

时间:2012-07-28 02:19:55

标签: javascript sammy.js

我有这段代码 - 我只需要在DOM元素上添加一个类,它将在模板中呈现。但是,这不起作用!

    this.get('#/:post_id', function(context){
            context.app.swap('');
         this.load('/post/' +  this.params['post_id'])
             .then(function(candidates){
                  $.each(candidates[1], function(i, candidate){
                      context.render("static/templates/candidate.template", {candidate:candidate})
                     .appendTo(context.$element());
             });
         })
        .then(function(){
            $('h3').addClass('custom_class');
         });

Candidate.template:

<div>
  <h3>Name : <%= candidate.name %> </h3>
  ...
  ...
</div>

1 个答案:

答案 0 :(得分:0)

我是Sammy的新手,所以带上一粒盐。我认为这是失败的,因为你的第一个.then()没有返回任何东西(比如上下文),这意味着下一个.then()没有任何工作。

这样的事情有用吗?

this.get('#/:post_id', function(context){
        context.app.swap('');
     this.load('/post/' +  this.params['post_id'])
         .then(function(candidates){
              $.each(candidates[1], function(i, candidate){
                  context.render("static/templates/candidate.template", {candidate:candidate})
                 .appendTo(context.$element());
         });
         return context;
     })
    .then(function(){
        $('h3').addClass('custom_class');
     });
});