我在model.js中定义了一个像这样的集合:
People = new Meteor.Collection("people");
Run Code Online (Sandbox Code Playgroud)
这是main.js中的代码:
function test2(){
console.log(JSON.stringify(People.find().fetch()));
setTimeout(test2,5000)
}
if (Meteor.isServer) {
if(People.find().fetch().length === 0){
var tom = {name:"Tom",age:18};
People.insert(tom);
}
Meteor.startup(function () {
test2();
});
}
Run Code Online (Sandbox Code Playgroud)
以下是我得到的错误:

我希望Meteor以设定的间隔自动在Collection上执行一些CRUD.所以我正在使用setTimeOut,但似乎很难.
关于我做错了什么的任何想法?
改为使用Meteor.setTimeout:
Meteor.setTimeout(test2,5000)
Run Code Online (Sandbox Code Playgroud)
在服务器上,使用光纤运行meteor代码来让你的同步代码编写,javascript的超时也必须让它的回调在光纤中激活,特别是如果它包含流星代码.