我正在使用MeteorJS并尝试从MongoDB中获取字段的值并分配给变量。但是,当要打印到控制台时,它始终都处于“未定义”状态。它在HTML模板中工作正常,但我需要将值存储在.js文件中的var中。
var num = ButtonsList.find({_id:'ZcLkjSwNGTpgHkoeq'});
var n = num.button1;
console.log("button number is: "+n);
如果我希望它们在浏览器中输出,下面的代码可以很好地工作。它使用{{}}名称空间以html格式输出按钮编号。但是正如我所说,我需要将值存储在变量中。
ButtonsList = new Meteor.Collection('list');
Template.theList.helpers({
'buttons': function(){
//return ButtonsList.find().fetch();
return ButtonsList.find('ZcLkjSwNGTpgHkoeq');
}
});
最佳答案
ButtonsList.find()
返回一个游标。ButtonsList.find().fetch()
返回一个按钮数组。ButtonsList.findOne()
返回将返回一个按钮。ButtonsList.findOne().fieldName
将返回找到的按钮的字段fieldName
。
它与{{#each}}
模板块帮助器一起使用的原因是each
块知道如何遍历游标。