我想将我的React应用程序部署到生产环境(使用heroku)。部署应用后,React开发工具会指示我的应用正在开发模式下运行
我将应用程序推送到了heroku:https://lesamisdhubert.herokuapp.com/
我试图设置环境变量:
heroku config:set NODE_ENV=production
但是,当我console.log(process.env.NODE_ENV)时,它将返回开发状态
在投入生产之前,我也尝试过npm run build
,但没有成功
这是我在package.json文件中的脚本:
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
然而console.log('node env --->', process.env.NODE_ENV);
返回“发展”
有人知道我如何将React App设置为生产模式吗?这是npm run build的问题吗? 非常感谢,我真的不知道这可能来自...
答案 0 :(得分:0)
在heroku中配置环境变量时,您必须附加REACT_APP_VARIABLENAME,然后设置其值,否则您将无法访问env变量。
看看:https://github.com/mars/create-react-app-buildpack#compile-time-configuration
您可以在heroku客户端中执行此操作
答案 1 :(得分:0)
我替换为package.json:
"scripts": {
"dev": "react-scripts start",
"start": "serve -s build",
"build": "react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject",
"heroku-postbuild": "npm run build"
}
我还创建了一个新的heroku应用程序,它似乎可以正常工作