我是 Meteor 的新手,所以为新手问题道歉。注意我使用的是 CoffeeScript。
我在服务器和客户端“ifs”之上创建了一个新集合,如下所示:
Trivia = new Meteor.Collection("trivia")
在启动时,我将一些文档插入到 if Meteor.isServer 下的集合中。这里的一个例子:
Meteor.startup () ->
Trivia.remove({})
Trivia.insert({question: "Who Played Ethan Hunt in Mission Impossible?", choices: ["Tom Cruise", "Matt Damon", "Liam Neeson", "Edward Norton"], answer: "Tom Cruise", used: false})
在 HTML 页面上,我有一个带有 {{ask}} 的“琐事”模板。
<body>
{{> trivia}}
</body>
<template name="trivia">
<p class="label label-info">Movie Trivia:</p>
<h3>{{ask}}</h3>
</template>
这是我在 .isClient 中的代码
if Meteor.isClient
Template.trivia.ask = () ->
Trivia.findOne({used: false})
事实上,我在 HTML 中的 h3 标记内返回 [object Object]。
我试图只取回问题文本,但如果我使用以下代码,我会得到一个空白页:
Template.trivia.ask = () ->
Trivia.findOne({used: false}).question
如果我在控制台中运行Trivia.findOne({used: false}).question,我会得到我正在寻找的内容,即:“谁在 Mission Impossible 中扮演 Ethan Hunt?”