2015-11-16 195 views
0

我是新来的流星,我只是想通过的console.log检查我收藏的内容当我刷新页面时,我的收藏会发生什么?

所以我用这个代码:

var TestCollection = new Mongo.Collection('testcollection'); 
if (Meteor.isClient) { 
    console.log("Client "); 
    console.log(TestCollection.find().fetch()); 

} 

if (Meteor.isServer) { 
    console.log("Server"); 
    console.log(TestCollection.find().count()); 
    Meteor.startup(function() { 
    if(TestCollection.find().count() ===0){ 
     TestCollection.insert({test: 'testvalue'}); 
    } 
    }); 
} 

当服务器开始

console.log(TestCollection.find().fetch()); 

给我我收藏的内容,但是当我点击刷新按钮时,收藏似乎是空的。那么当我点击刷新按钮时,我的收藏会发生什么?

回答

0

假设您正在使用自动发布软件包,这只是一个计时问题,并且客户端尚未收到数据。

试着改变你的客户端代码如下:

if (Meteor.isClient) { 
    console.log('On startup'); 
    console.log(TestCollection.find().fetch()); 

    Meteor.setTimeout(function() { 
    console.log('After 50ms'); 
    console.log(TestCollection.find().fetch()); 
    }, 50); 
} 
+0

谢谢,完美的作品! – Edelstoff

0

尝试删除“VAR”关键字时,您定义的集合。

我认为使用“var”关键字使其成为本地作用域变量,使您的服务器&客户端集合分开。

相关问题