meteor:如何列出一个集合(基础知识)

时间:2014-03-15 19:40:29

标签: javascript node.js meteor

我非常喜欢meteor所看到的内容。但是,我得到了您需要了解基础知识的文档的印象。因此,没有描述像列出集合这样的基本内容。无论如何,列出一个集合是我想要的(现在),所以有人可以帮助我吗?

js文件:

var Bars = new Meteor.Collection('bar'),

Bars.insert({ title: 'bar', index: 0})
Bars.insert({ title: 'foo', index: 1})

if (Meteor.isClient) {
    Meteor.subscribe('bar');

    var list = Bars.find({}).fetch();
}

if (Meteor.isServer) {
    Meteor.startup(function () {
       // code to run on server at startup
    });
}

HTML文件:

<head>
    <title>Meteor test app</title>
</head>

<body>
    <ol class="bar">
        {{#each list}}
            <li>{{title}}</li>
        {{/each}}
   </ol>
</body>

简单但基本的东西。此外,如果其他人更新了集合,会更新吗?最后,是否有一个从基础开始解释这个流星魔法的地方?

1 个答案:

答案 0 :(得分:1)

您正在寻找的文档部分是Template Helpers

您需要将您拥有的列表变量分配给模板可以看到的帮助程序。

这样的事情:

var Bars = new Meteor.Collection('bar');

if (Meteor.isClient) {
    Meteor.subscribe('bar');

    Template.bars.helpers({
        list: function () {
            return Bars.find({}).fetch();
        }
    });
}

if (Meteor.isServer) {
    Bars.insert({ title: 'bar', index: 0});
    Bars.insert({ title: 'foo', index: 1});
}

然后在HTML中:

<head>
    <title>Meteor test app</title>
</head>

<body>
    {{>bars}}
</body>
<template name="bars">
    <ol class="bar">
        {{#each list}}
            <li>{{title}}</li>
        {{/each}}
    </ol>
</template>