在我的主 js 文件中,我定义了一个“new Meteor.Collection("Decks")”,如果没有数据,我会填充一些数据。
现在我在客户端文件夹中有一个 views 文件夹,其中包含用于模板事件的 javascript。每个模板都有自己的 js 文件。这些事件需要查询和更新 Decks 集合,但我不知道该怎么做。我尝试在事件代码中写一个“new Meteor.Collection("Decks")”,但我得到一个错误,表明该集合已经存在。
我可以想象使用 requirejs 将全局变量传递给事件,但我觉得在 Meteor 中必须有一种本地方法来完成它。
如何访问不同文件中的同一集合?
举个例子,我的应用叫做“builder”,所以主要的js叫做“builder.js”,包含:
var Decks = new Meteor.Collection("Decks");
然后我在客户端文件夹中有另一个名为“do_other_stuff.js”的 javascript 文件,它想要查询 Decks 集合,比如:
var first_deck = Decks.findOne({name: "first"});
但显然这行不通,因为 Decks 不是全局变量。
最佳答案
简单地说,让 Decks
成为一个全局变量!删除 var
关键字:
Decks = new Meteor.Collection("Decks");
关于javascript - 我如何从 Meteorjs 中的多个文件访问一个集合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18354549/