模板助手返回结果后的事件

时间:2014-11-06 22:41:17

标签: meteor

我有“Items”集合,每个实例都有“title”和“price”属性。

模板HTML:

<template name="home">
    <div>
        <h1>Items</h1>
        {{#each items}}
            <p data-price="{{price}}">{{text}}</p>
        {{/each}}
    </div>
</template>

模板助手:

Template.home.helpers({
    items: function() {
        return Items.find();
    }
});

例如,我想循环遍历每个“p”标记并获取“data-price”属性值。 我在哪里放这个代码。我试图使用模板“呈现”事件,但这不起作用。 那么有意义的是,当模板“呈现”事件被触发时,并不意味着项目助手已经返回了集合。

所以这将返回空数组:

Template.home.rendered = function() {
    var items = template.findAll('p');
    console.log(items);
}

这将根据需要运作:

Template.home.rendered = function() {
    var template = this;

    // wait for 1 second, and then try to loop over "p"
    setTimeout(function() {
        var items = template.findAll('p');
        console.log(items);
    }, 1000);
};

那么如何在项目助手完成数据后运行代码?也许有一些回调呢?

0 个答案:

没有答案