Javascript Meteor.js RangeError:超过最大调用堆栈大小

Javascript Meteor.js RangeError:超过最大调用堆栈大小,javascript,meteor,Javascript,Meteor,在Meteor服务器控制台日志中,我得到以下错误: web_1 | /var/www/html/bundle/programs/server/packages/meteor.js:786 web_1 | }).run(); web_1 | ^ web_1 | web_1 | RangeError: Maximum call stack size exceeded 然后Meteor服务器重新启动。 这种错误每天发生几次 我在这里搜索了错误,但找不到解决方案

在Meteor服务器控制台日志中,我得到以下错误:

web_1  | /var/www/html/bundle/programs/server/packages/meteor.js:786
web_1  |       }).run();
web_1  |          ^
web_1  |
web_1  | RangeError: Maximum call stack size exceeded
然后Meteor服务器重新启动。 这种错误每天发生几次

我在这里搜索了错误,但找不到解决方案。 我有一个很大的Meteor项目,我不知道错误来自哪里,所以没有提供代码

希望有人知道这个错误的根本原因,或者对如何调试它有所帮助


我的流星版本是METEOR@1.4.1.3

如果不仔细查看您的代码,很难说。但“超过最大调用堆栈大小”几乎总是意味着无限递归。你有一个旧版本的代码可以工作吗?缩小范围?另一种可能性是,您正在修改反应式代码中的数据,这本身就取决于(重新触发)更改。谢谢,Christian。我试图缩小范围,但我们的devops无法找出这个错误是何时出现的。那么,您就有了另一个问题!所以你甚至没有这个错误还没有发生的那一天的日志?您肯定需要找到一种方法将其缩小到代码中递归异常的地方。因此,要么找到它开始发生的时间来检查发生了什么更改,要么用日志语句来填充代码,看看错误之前的最后一行标称代码是什么。您是否尝试过使用静态linter(如
eslint
)来检查整个项目?eslint有一些很好的配置,比如
standard
prettier
,它们能够发现导致此类运行时错误的潜在代码气味。