我已经获得了使用{{#each}}迭代器生成的简单文档列表:
{{#each Teachers}}
<td>{{FullName}}</td>
{{/each}}
当用户点击列出的其中一位教师时,新页面将被发送到该教师的个人资料页面,我们可以访问该教师的文档,其中包含&#39;所以我可以说:
var phone = this.phoneNumber;
现在,在该教师的个人资料页面中,还会生成该教师学生的另一个列表:
{{#each Students}}
<td>{{FullName}}</td>
{{/each}}
当用户点击该列表中的学生时(在该教师的页面上),我试图通过使用&#39;这个&#39;来访问学生文档。再次。所以,如果我写道:
Template.TeacherTemplate.events({
'click #student-name': function () {
console.log(this.FullName);
}
我希望在控制台中看到学生的全名。但它仍然在这里引用了老师的全名。如何在点击学生列表时获得对学生的引用?
答案 0 :(得分:2)
为学生制作另一个模板。
<template name='student'>
<td>{{FullName}}</td>
</template>
然后在每个循环中使用学生模板。
{{#each Students}}
{{> student}}
{{/each}}
Template.student.events({
'click': function(){
console.log(this.FullName);
}
});