如何使用Blaze.Each
?例如,我想模仿这个:
{{#each Items}}
{{this}}
{{/each}}
在JS中。我需要保持反应。
类似的东西:
Blaze.Each(Items.find(), function(item) {
console.log(item);
});
答案 0 :(得分:1)
我没有得到以前的答案
:此强>
HTML
<template name="yourTemplate">
<div id="each-area">
</div>
</template>
JS
Template.yourTemplate.onRendered(function () {
var renderableContent = Blaze.Each(Collection.find({}), function(){
return Template.templateToRender;
});
Blaze.render(renderableContent, this.find("#each-area"));
});
完全等同于此:
HTML
<template name="yourTemplate">
<div id="each-area">
{{#each data}}
{{>templateToRender}}
{{/each}}
</div>
</template>
JS
Template.yourTemplate.helpers({
"data": function(){
return Collection.find({})
}
});
答案 1 :(得分:-1)
this.autorun(function(){
var items = Items.find();
_.each(items.fetch(), function(item) {
console.log(item);
});
});
这很有效。每次添加一个Item时都会调用console.log。
没有下划线和自动运行:
Blaze.Each(Data.find().fetch(), function(item){
console.log(item)
})