我正在使用meteors / mongo和我的ionic2 / angular2 app。在我的应用程序中,我需要客户端数据保持脱机状态。我遇到了meteor包地面db https://atmospherejs.com/ground/db用于客户端持久性但在客户端创建地面集合时遇到错误。
我将collections.ts中的集合基于客户端和服务器共同使用。我的代码是
export const Messages = new MongoObservable.Collection("messages");
if(Meteor.isClient){
Ground.Collection(Messages);
Ground.Collection(Meteor.users);
}
在客户端我收到错误
"First argument to new Mongo.Collection must be a string or null
at v (polyfills.js:3)
at new Mongo.Collection (meteor-client.js:32177)
at Object.groundCollection [as Collection]"
我的理由:db版本为0.3.15,流星版本为1.4.4.1。我很感激这个问题的任何帮助。
答案 0 :(得分:1)
你可能只需要将“原始”Meteor Mongo Collection提供给Ground.Collection
,而不是使用angular2-meteor包裹的那个:
const Messages = new MongoObservable.Collection("messages");
Ground.Collection(Messages.collection);
Messages
是带有RxJS observables包装器的angular2-meteor集合。
Messages.collection
是underlying Meteor Mongo Collection(即如果直接执行new Mongo.Collection("messages")
会得到什么)