我要使用environment variables
。我做了一个自定义react app environment
。
一切正常,应用程序正常运行,没有错误。但是.env
文件中的变量给出了undefined
,而process.env
得到了empty object
。
我在变量中添加了dotenv和REACT_APP
前缀。
在webpack.config.js
文件中,我从here添加了node: { fs: 'empty' }
这是我的configurations。
文件夹结构:
答案 0 :(得分:1)
已解决的问题:
dotenv
app.js
文件中删除这两个文件:const dotenv = require('dotenv')
dotenv.config();
从--env
脚本中删除标志npm start
。
从node: { fs: 'empty' }
文件中删除webpack.config.js
安装dotenv-webpack,然后按照指示进行操作。
不需要REACT_APP
前缀。
答案 1 :(得分:0)
您必须将REACT_APP
放在想要的变量名之前
例如:/
REACT_APP_YOUR_VAR="something"
您不需要安装Dotenv或其他任何东西,因为React有自己的。
答案 2 :(得分:0)
尝试https://www.npmjs.com/package/dotenv使用Marker
变量
在您的入门JS文件中,添加以下代码段(也许是您的.env
)
./src/assets/js/app.js
并重新启动您的应用。
答案 3 :(得分:0)
您可以使用webpack.DefinePlugin
plugins: [
new webpack.DefinePlugin({
'process.env': {
'NODE_ENV': JSON.stringify('development')
}
})
],
然后在您的代码中只需使用process.env.NODE_ENV访问ENV变量