流星开始教程_id来自哪里?

时间:2015-01-04 20:01:49

标签: javascript mongodb meteor

我遵循了良好的开端教程 https://www.meteor.com/try/5

任何人都可以告诉我this._id来自哪里

我在html模板中看不到任何内容

模板

<template name="task">
  <li class="{{#if checked}}checked{{/if}}">
    <button class="delete">&times;</button>

    <input type="checkbox" checked="{{checked}}" class="toggle-checked" />

    <span class="text">{{text}}</span>
  </li>
</template>

的js

Template.task.events({
    "click .toggle-checked": function () {
      // Set the checked property to the opposite of its current value
      Tasks.update(this._id, {$set: {checked: ! this.checked}});
    },
    "click .delete": function () {
      Tasks.remove(this._id);
    }
  });

我过去常常在html中看到id .....

1 个答案:

答案 0 :(得分:0)

正如教程中所说:

  

在事件处理程序中,这指的是单个任务对象。

通常,事件处理程序中的this引用用于呈现事件发生的元素的数据上下文。

修改

我意识到我的答案对初学者来说可能不那么好。让我再试一次。

查看the template is inserted的位置。它位于#each块内,#each块将数据上下文更改为集合中的文档。在任务模板中,数据上下文永远不会更改(可以使用#each#with块进行更改),因此事件处理程序中的this将引用用于呈现的文档模板。