在我的主 js 文件中,我定义了一个“new Meteor.Collection("Decks")”,如果没有数据,我会填充一些数据。
现在我在客户端文件夹中有一个视图文件夹,其中包含用于模板事件的 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 不是全局变量。