在生产环境中运行 React 时出现以下错误。
TypeError: Cannot read property 'addHook' of null
at Object.<anonymous> (/app/node_modules/react/lib/ReactDOM.js:106:33)
这是什么意思?
看起来问题出在调试工具上。
var ReactDebugTool = {
addHook(hook: Hook): void {
hooks.push(hook);
}
因此,您可能仍在开发模式下运行。
注意:默认情况下,React 将处于开发模式。要在生产模式下使用 React,请将环境变量 NODE_ENV 设置为生产(使用 envify 或 webpack 的 DefinePlugin)。推荐使用 UglifyJS 等执行死代码消除的压缩程序,以完全删除开发模式中存在的额外代码。
我通过在我的应用程序顶部包含代码行解决了这个答案:
process.env.NODE_ENV === 'production'
;
然后在我的应用程序中搜索process.env.NODE_ENV
并删除对它的任何其他更改。
我的问题是我之前做过一个export NODE_ENV=production; ...
然后忘记了。清除变量解决了这个问题。