【发布时间】:2015-02-24 09:49:35
【问题描述】:
我正在尝试在 Meteor 中构建一个简单的记忆卡游戏,但我似乎无法创建我的卡片网格以填充到 html 中。我现在只是想获得一个 4x4 网格。
这里是javascript:
Template.body.helpers({
cards: function() {
var allCards = Deck.find({}).fetch();
var chunks = [];
while (allCards.length > 0) {
chunks.push(allCards.slice(0, 4));
allCards = allCards.slice(4);
}
return chunks;
},
});
这是 HTML:
<body>
<div class="container">
<div name="gameBoard">
{{#each cards}}
{{> cardsRow}}
{{/each}}
</div>
</div>
</body>
<template name="cardsRow">
<div class="row">
{{#each row}}
{{> card}}
{{/each}}
</div>
</template>
<template name="card">
<span class="text">{{text}}</span>
</template>
现在我在数据库中只有简单的文本条目,以便在我拉入图像之前查看我在做什么。我已经尝试从我的 JS 进行控制台日志记录,并且我相信我正在正确地创建拼接行数组,所以我认为问题可能出在我安排降价的方式上。
我尝试将每个卡片循环也拉到模板中,而不是在正文中,但我不确定如何按需渲染模板。这可能是一个选项,因为我有一个可以调用渲染的新游戏按钮事件侦听器。我只是不确定如何在 Meteor 中显式渲染。
我尝试按照上一篇文章进行操作,但无法正常工作: How do I populate a bootstrap grid system using handlebars for each command in Meteor.js?
想法?如果需要,我可以提供更多我的代码库。
【问题讨论】:
标签: javascript html meteor