表排序导致流星重复

时间:2014-03-07 09:38:54

标签: meteor

在我的流星应用程序中,我有一个数据表,其中包含每个coloumn的排序。当我继续点击coloumn进行排序时,表本身就会成倍增加。

这是设置会话变量的代码。

'click #coloumn_name' : function()
{
    var oldOrder = Session.get("sortOrder");
    var sortField = 'coloumn1';
    Session.set("sortField",sortField );
    if(oldOrder == 1)
    {
        var newOrder = -1;
        Session.set("sortOrder",newOrder );
    }
    else
    {
        var newOrder = 1;
        Session.set("sortOrder",newOrder );
    }
}

以下是用于读取会话变量和从db获取数据的代码。

Template.templatename.vname = function()
{
    var filter = {sort: {}};
    var sortField = Session.get('sortField');
    var sortOrder = Session.get('sortOrder');
    if(!sortField)
    {
        sortField = 'coloumn2';
    }
    if(!sortOrder)
    {
        sortOrder = 1;
    }   
    filter.sort[sortField] = sortOrder;
    return Groups.find({}, filter);     
}

这是我的模板

  <template name="templatename">
    <table>
      <tr>
       <th>Group Name</th>
       <th>Status</th>
      </tr>
       {{#each vname }}  
      <tr>
       <td> {{name}} </td>
       <td> {{status}} </td>
      </tr>
      {{/each}}
    </table>
  </template>

这是尝试排序之前的表格。 enter image description here

This is the image after trying to sort

enter image description here

有没有人知道为什么会这样?

0 个答案:

没有答案