首页 > 解决方案 > Meteor - Meteor.Collection.get 未在生产中定义

问题描述

我正在尝试Meteor.Collection.get(collection_name)在生产中使用(仅限服务器端),它在开发中运行良好;但是一旦我尝试使用 构建我的应用程序meteor --production,meteor throw

TypeError: Meteor.Collection.get 不是函数

我想 Meteor.Collection.get 只是为了调试目的而制作的(我在官方文档中找不到任何关于它的信息)。知道如何在生产中使用它吗?

标签: javascriptmeteordev-to-production

解决方案


我不确定,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


推荐阅读