Reactjs &引用;未定义流程”的定义;反应弹出后出错
在react项目中运行Reactjs &引用;未定义流程”的定义;反应弹出后出错,reactjs,webpack,eslint,Reactjs,Webpack,Eslint,在react项目中运行纱线弹出后,在index.js中调用registerServiceWorker()时出现未定义“进程”的错误。脚本和配置目录中的文件不会被修改 对于模块变量,我得到了相同的错误。发生这种情况是因为React使用process.env确定您是在开发环境中还是在生产环境中。从getting-started.md开始: 注意:默认情况下,React将处于开发模式,速度较慢,不建议用于生产。要在生产模式下使用React,请将环境变量NODE_ENV设置为production(使用e
纱线弹出
后,在index.js中调用registerServiceWorker()
时出现未定义“进程”的错误。脚本和配置目录中的文件不会被修改
对于模块
变量,我得到了相同的错误。发生这种情况是因为React使用process.env确定您是在开发环境中还是在生产环境中。从getting-started.md开始:
注意:默认情况下,React将处于开发模式,速度较慢,不建议用于生产。要在生产模式下使用React,请将环境变量NODE_ENV设置为production(使用envify或webpack的DefinePlugin)
例如:
new webpack.DefinePlugin({
"process.env": {
NODE_ENV: JSON.stringify("production")
}
});
因此,要使用Rollup构建它,您需要将process.env.NODE_env替换为“development”或“production”——您可以使用Rollup插件替换:
rollup({
entry: 'main.js',
plugins: [
replace({
'process.env.NODE_ENV': JSON.stringify( 'production' )
})
]
}).then(...)
由于没有太多关于设置的详细信息,我的答案是假设您使用的是create react app
,这是具有eject
命令概念的最常用工具
您正在使用之前发布的CRA版本,将registerServiceWorker
文件重命名为serviceWorker
,因此,我假设您正在谈论的是创建react应用程序的弹出功能。共享版本会更好。您是在讨论控制台中的实际错误还是ESLint错误?您使用的是哪个节点版本?您可能需要升级它,因为进程
来自节点。如果不是这样的话,那么可能是你的网页或babel配置没有正确编译JS。什么是JS或OS?窗户?因为我认为在弹出后,您丢失了有关env
的一些配置,因此您的代码无法识别进程。如果你的操作系统是windows,我有一个很好的解决方案。