流星-在生产中未定义Meteor.Collection.get

时间:2019-02-12 17:59:30

标签: javascript meteor dev-to-production

我正在尝试在生产中使用Meteor.Collection.get(collection_name)(仅用于服务器端),它在开发中效果很好;但是,一旦我尝试使用meteor --production构建应用,流星就会

  

TypeError:Meteor.Collection.get不是函数

我想Meteor.Collection.get仅用于调试目的(我在官方文档中找不到关于它的任何内容)。知道如何在生产中使用它吗?

1 个答案:

答案 0 :(得分:0)

我不确定Meteor.Collection.get在您的代码中来自何处,但我知道非常可靠且能长期使用的战斗证明dburles:mongo-collection-instances,可让您通过其名称检索Mongo.Collection。

添加软件包:

meteor add dburles:mongo-collection-instances

创建收藏集:

// server/client
export const MyDocs = new Mongo.Collection('myDocs')

获取收藏集:

// anywhere else
const MyDocs = Mongo.Collection.get('myDocs')

它可以在服务器和客户端上运行,并且在生产中可以正常运行。

文档:https://github.com/dburles/mongo-collection-instances

修改:关于--production

的注释

此标志仅用于模拟生产最小化。在文档中查看重要信息:https://guide.meteor.com/deployment.html#never-use-production-flag

您应始终使用meteor build来构建生产节点应用程序。更多内容,请点击此处:https://guide.meteor.com/deployment.html#custom-deployment