如何调试超出最大调用堆栈大小错误
How to debug a Maximum call stack size exceeded error
我已查看 this thread 关于最大调用堆栈错误的内容。我正在构建一个相当大的 MERN-stack React 应用程序,这是我在 chrome 开发人员工具控制台中收到的我自己的错误:
当我在应用程序的页面之间切换时,这些错误会不时弹出。错误不一致,当我在错误发生后刷新 chrome 时,页面在刷新后加载正常。关于调试这个问题,我完全迷失了。 index.js:42、23、96 不是我写的代码。那么我的问题是,关于调试:
(1) 我如何查看调用堆栈以查看其中填充的内容?我可以在 chrome 开发工具的某个地方看到这个吗?
(2) 我可以安装一个 react / chrome / developer 调试器来调试这个吗?我想使用什么调试器?
(3) 关于如何调试它的任何其他想法。特别是我不明白调用堆栈是什么。
我在我的 React 应用程序中使用 redux,如果此信息有帮助,我网站的不同页面会从我的数据库中执行大量不同大小的数据提取。也许我只是太快地获取了太多数据?非常感谢任何帮助。
编辑: 在 2 个单独的屏幕截图中(因为我无法将它们全部放在一个屏幕截图中),我分享了 index.js 中提到的内容错误信息。看起来 objEquiv
和 deepEqual
函数之间发生循环,相互调用,但我在我的应用程序中专门调用了这些命名函数。
这个github post - https://github.com/nfl/react-helmet/issues/373 - 就是解决方案。它似乎与我的 React Helmet 使用有关。
我已查看 this thread 关于最大调用堆栈错误的内容。我正在构建一个相当大的 MERN-stack React 应用程序,这是我在 chrome 开发人员工具控制台中收到的我自己的错误:
当我在应用程序的页面之间切换时,这些错误会不时弹出。错误不一致,当我在错误发生后刷新 chrome 时,页面在刷新后加载正常。关于调试这个问题,我完全迷失了。 index.js:42、23、96 不是我写的代码。那么我的问题是,关于调试:
(1) 我如何查看调用堆栈以查看其中填充的内容?我可以在 chrome 开发工具的某个地方看到这个吗?
(2) 我可以安装一个 react / chrome / developer 调试器来调试这个吗?我想使用什么调试器?
(3) 关于如何调试它的任何其他想法。特别是我不明白调用堆栈是什么。
我在我的 React 应用程序中使用 redux,如果此信息有帮助,我网站的不同页面会从我的数据库中执行大量不同大小的数据提取。也许我只是太快地获取了太多数据?非常感谢任何帮助。
编辑: 在 2 个单独的屏幕截图中(因为我无法将它们全部放在一个屏幕截图中),我分享了 index.js 中提到的内容错误信息。看起来 objEquiv
和 deepEqual
函数之间发生循环,相互调用,但我在我的应用程序中专门调用了这些命名函数。
这个github post - https://github.com/nfl/react-helmet/issues/373 - 就是解决方案。它似乎与我的 React Helmet 使用有关。