我收到以下错误
W20141210-18:14:54.394(5.5)? (STDERR)
W20141210-18:14:54.395(5.5)? (STDERR) /Users/removed/.meteor/packages/meteor-tool/.1.0.36.1phxfod++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/dev_bundle/lib/node_modules/fibers/future.js:173
W20141210-18:14:54.395(5.5)? (STDERR) throw(ex);
W20141210-18:14:54.395(5.5)? (STDERR) ^
W20141210-18:14:54.396(5.5)? (STDERR) RangeError: Maximum call stack size exceeded
=> Exited with code: 8
=> Your application is crashing. Waiting for file change.
当我使用 meteor 方法返回查询结果时。
Meteor.methods({
rquery: function(post){
console.log(post);
var result = AdvtColl.find();
return result;
}
});
最佳答案
你不能从一个方法返回一个游标——只有 EJSON .在您的代码中,result
是 find
调用的结果,它是一个游标 - 您需要使用 findOne
或添加 fetch()
在 find()
之后返回有问题的文档。
var result = AdvtColl.findOne(); // RETURNS A DOCUMENT
var result = AdvtColl.find().fetch(); // RETURNS AN ARRAY OF DOCS (EVEN IF THERE'S ONLY ONE OF THEM)
关于javascript - meteor :RangeError:超出最大调用堆栈大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27401519/