流星:Blaze。每个例子

时间:2015-06-09 10:56:49

标签: meteor foreach meteor-blaze

如何使用Blaze.Each?例如,我想模仿这个:

{{#each Items}}
  {{this}}
{{/each}}
在JS中

。我需要保持反应。

类似的东西:

Blaze.Each(Items.find(), function(item) {
 console.log(item);
});

2 个答案:

答案 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) 
})