运行 生产构建时 React App 崩溃
React App crashes when running the production build
我可以 运行 我的 react-app(使用 create-react-app 样板)与本地开发服务器完美配合,但是当我使用 npm run build
编译它然后 运行 它与服务器(我试过 netlify 和本地 http-server),我只得到这个错误并且页面没有加载:
classCallCheck.js:1 Uncaught RangeError: Maximum call stack size exceeded
at Object.a (classCallCheck.js:1)
at e (Object.js:6)
at e (Object.js:6)
at e (Object.js:6)
at e (Object.js:6)
at e (Object.js:6)
at e (Object.js:6)
at e (Object.js:6)
at e (Object.js:6)
at e (Object.js:6)
文件Object.js放在src/Model/Objects/Object.js.
下
GitHub: https://github.com/Tracer1337/DynaSys
部署在 Netlify 上:https://youthful-mestorf-9e0ba8.netlify.com/
我做错了什么?
调试起来很有趣。您似乎创建了一个名为 Object
的 class,它在 JavaScript.
中是一个受保护的词
您可以通过单击错误右侧的来源来找出导致问题的原因。这将打开导致错误的相应文件(create-react-app
默认提供源映射,因此即使在生产中调试也不是问题)。
我通过将 Object
class 重命名为 InternalObject
解决了这个问题,现在即使在生产模式下也一切正常!
至于为什么它在开发模式下使用那个受保护的名称工作,我不知道。也许其他人有想法?
留在这里供将来参考。我的 React 应用程序仅在生产构建的一个特定屏幕上崩溃,但在开发环境中没有。
使用 adb logcat *:E
我设法追踪到一个错误的导入,这很可能是由 vscode 的智能感知从错误的地方导入函数引起的。
我没有执行 import { useState } from "react"
,而是从 "react/cjs/react.development"
导入了 useState()
函数。有趣的是,来自错误文件的 useState()
实际上在开发版本中工作得很好(文件名可能暗示了原因)。
我可以 运行 我的 react-app(使用 create-react-app 样板)与本地开发服务器完美配合,但是当我使用 npm run build
编译它然后 运行 它与服务器(我试过 netlify 和本地 http-server),我只得到这个错误并且页面没有加载:
classCallCheck.js:1 Uncaught RangeError: Maximum call stack size exceeded
at Object.a (classCallCheck.js:1)
at e (Object.js:6)
at e (Object.js:6)
at e (Object.js:6)
at e (Object.js:6)
at e (Object.js:6)
at e (Object.js:6)
at e (Object.js:6)
at e (Object.js:6)
at e (Object.js:6)
文件Object.js放在src/Model/Objects/Object.js.
下GitHub: https://github.com/Tracer1337/DynaSys
部署在 Netlify 上:https://youthful-mestorf-9e0ba8.netlify.com/
我做错了什么?
调试起来很有趣。您似乎创建了一个名为 Object
的 class,它在 JavaScript.
您可以通过单击错误右侧的来源来找出导致问题的原因。这将打开导致错误的相应文件(create-react-app
默认提供源映射,因此即使在生产中调试也不是问题)。
我通过将 Object
class 重命名为 InternalObject
解决了这个问题,现在即使在生产模式下也一切正常!
至于为什么它在开发模式下使用那个受保护的名称工作,我不知道。也许其他人有想法?
留在这里供将来参考。我的 React 应用程序仅在生产构建的一个特定屏幕上崩溃,但在开发环境中没有。
使用 adb logcat *:E
我设法追踪到一个错误的导入,这很可能是由 vscode 的智能感知从错误的地方导入函数引起的。
我没有执行 import { useState } from "react"
,而是从 "react/cjs/react.development"
导入了 useState()
函数。有趣的是,来自错误文件的 useState()
实际上在开发版本中工作得很好(文件名可能暗示了原因)。