如何在Meteor模板中获取_id值

时间:2016-03-15 19:36:23

标签: templates meteor

这是我的模板代码段。

{{#if is_multiple_choice _id}}
  <div class="row" style="margin-bottom: 20px;">
    <div class="input-field col s11">
      <select id="ans_{{_id}}" name="answer" class="multiple_choice_answer">
        <option value="">No Answer Given for Multiple Choice</option>
      {{#each allowed_values}}
        {{#if matched value _id}}
          <option value="{{value}}" selected>{{value}}</option>
        {{else}}
          <option value="{{value}}">{{value}}</option>
        {{/if}}
      {{/each}}
      </select>
      <label>{{text}}</label>
    </div>
  </div>
{{/if}}

所以我的目标是在#34;匹配&#34;中使用_id帮手,但似乎匹配值的_id _id行什么都没有。

我如何获得_id并在&#34;匹配&#34;中使用它助手?

请帮帮我!!!

1 个答案:

答案 0 :(得分:2)

{{#each}} {{/each}}循环中,您处于上下文

要访问上下文,您需要使用..表示法,如下所示:../_id

您还可以在Template.helper中使用this来获取this._id

Template.example.helper({
    "id": return this._id;
});

然后,您可以在模板中的任何位置使用id

注意:

1)this._id相当于帮助者中的Template.instance().data._id

使用Template.instance().data访问eventonCreatedonRendered中的模板数据上下文。

2)..表示法也可用于访问祖父模板,例如../../_id

..模式可用于从同一模板中的{{#each}}循环访问父上下文,但不建议使用子模板(访问父模板),因为您的孩子没有父模板上下文,模板不可重用。