【问题标题】:meteor: how to list a collection (the basics)流星:如何列出一个集合(基础)
【发布时间】:2014-04-21 03:34:17
【问题描述】:

我真的很喜欢我在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>

简单但基本的东西。另外,如果其他人更新 bar 集合,这会更新吗?最后,这个meteor魔法有没有从基础开始讲解的地方?

【问题讨论】:

    标签: javascript node.js meteor


    【解决方案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>
    

    【讨论】:

      猜你喜欢
      • 2014-04-18
      • 1970-01-01
      • 1970-01-01
      • 2013-05-20
      • 1970-01-01
      • 1970-01-01
      • 2014-04-30
      • 1970-01-01
      • 2013-11-30
      相关资源
      最近更新 更多