【问题标题】:Meteor Spacebars - {{#each}} params流星空格键 - {{#each}} 参数
【发布时间】:2016-07-14 06:33:49
【问题描述】:

这是我的代码:

HTML

卡 1:

<!-- Shopping list -->
<div id='shopping' class='card'>
  {{#each task}}
  <ul class="card__task">
    <li>{{taskText}}</li>
    <i class="fa fa-minus delete-task"></i>
  </ul>
  {{/each}}
</div>

卡 2:

<!-- Medicine list -->
<div id='medicine' class='card'>
  {{#each task}}
  <ul class="card__task">
    <li>{{taskText}}</li>
    <i class="fa fa-minus delete-task"></i>
  </ul>
  {{/each}}
</div>

template.helper

  task: function() {
    return Tasks.find({}, {
      sort: {
        createdAt: -1
      }
    });
  }

任务集合示例

例 1:

   ...
  "taskGroup": "medicine",
  "taskText": "medicine task 1",
   ...

例 2:

   ...
  "taskGroup": "shopping",
  "taskText": "shopping task 1",
   ...

所以,我得到了一个集合,用于存储任务,其中 taskGroup 对应于 textarea input id。现在each 遍历我在tasks collection 中的每一项任务,这两张卡片显示了所有任务。

问题:

如何告诉each 块仅迭代具有taskGroup 等于此卡id 的任务?

类似:

  task: function() {
    return Tasks.find({
    taskGroup: *the card where each block is located*.getAttribute("id");
    }, {
      sort: {
        createdAt: -1
      }
    });
  }

【问题讨论】:

    标签: meteor handlebars.js spacebars


    【解决方案1】:

    您可以创建一个按任务组进行过滤的 blaze 助手

    tasks: function(taskGroup) {
    return Tasks.find({
    taskGroup: taskGroup;
    }, {
      sort: {
        createdAt: -1
      }
    });
    

    }

    这样你就可以像这样在模板上调用它

    {{#each tasks 'medicine'}}
    ...
    {{/each}}
    

    【讨论】:

      猜你喜欢
      • 2017-08-05
      • 2015-08-02
      • 2016-01-09
      • 2014-12-19
      • 1970-01-01
      • 2014-11-24
      • 1970-01-01
      • 2015-09-06
      • 2015-06-11
      相关资源
      最近更新 更多