Meteor全局变量未正确加载

Meteor全局变量未正确加载,meteor,Meteor,因此,我试图创建一个全局变量,将MongoDB数据库复制到一个新数组中,因此我将服务器调用保持在最低限度 看起来是这样的: db = _.map(MyCollection.find().fetch()[0], function(item){return item}); 我把它放在我的/lib/constants.js文件夹中,以确保在客户端加载任何其他内容之前加载它。我把它放在客户机里,它就工作了 最终,db作为一个全局变量是行不通的。不知道我做错了什么。另外,如果您也愿意回答这个问题:我可以

因此,我试图创建一个全局变量,将MongoDB数据库复制到一个新数组中,因此我将服务器调用保持在最低限度

看起来是这样的:

db = _.map(MyCollection.find().fetch()[0], function(item){return item});
我把它放在我的/lib/constants.js文件夹中,以确保在客户端加载任何其他内容之前加载它。我把它放在客户机里,它就工作了

最终,db作为一个全局变量是行不通的。不知道我做错了什么。另外,如果您也愿意回答这个问题:我可以在lib文件夹中执行常规的JS语句,比如循环,以便在客户端之前加载结果吗


谢谢

因为它不起作用,当我需要调用它时,客户端上的助手函数无法访问它。这基本上就像它不存在,但没有异常错误发生。当我把它移植到客户端的一个helper函数中时,它工作得很好,我需要从新的db变量中获取的所有数据都显示出来了。你能看看它是否符合你的要求吗?我以前看到过,我什么都不知道。让我更新一下:如果我操作/lib/constants.js文件中的数据,效果会很好。但是,如果我想获取db变量并尝试在/lib/constants.js文件之外对其进行操作,那么一切都会崩溃,原始脚本将无法运行。我想我必须用js常量编写所有javascript。这对我来说没问题。这听起来像是一些装载顺序问题,这就是为什么我向你们指出这个问题。您确定db变量在尝试访问它之前已初始化吗?集合的全局订阅将在客户端产生相同的效果,并使您能够轻松查询数据。