如何在Slim模板中使用Ractive的on-tap属性?

时间:2015-05-19 22:05:40

标签: slim-lang ractivejs

在我的Slim模板中,我有:

PostsNewRoute

这呈现:

th class=="sortable {{ sortColumn === 'name' ? 'sorted' : '' }}" on-tap=="sort:name" Name

单击该项时未调用sort方法。

<th class="sortable sorted">Name</th> 属性在这种情况下是否有效或是否需要不同的语法?我尝试过Slim的splat属性:

on-tap

但Slim在遇到th class=="sortable {{ sortColumn === 'name' ? 'sorted' : '' }}" *({:on-tap => ["sort:name"]}) 时会抱怨。

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

编辑:对不起,我第一次误会了。基于此:

  

单击该项时不会调用sort方法。

我怀疑你是在混淆方法调用和事件。

如果要在ractive实例上调用方法,则语法为:

on-tap='sort("name")'

将通过以下方式处理:

new Ractive({
   sort: function(name){

   }
});

如果您想举办活动,请使用您拥有的语法:

on-tap='sort:name'

通过以下方式处理:

new Ractive({
   oninit: function(){
       this.on('sort', function(event, name){

       });
   }
});

请参阅http://jsfiddle.net/yccknhh5/