尝试使用属性名称访问undefined
属性时得到process.env
。查看代码示例
const foo = Object.keys(process.env)[0] // 'node'
console.log(foo === 'node') // true
console.log(process.env.node) // undefined
console.log(process.env['node']) // undefined
console.log(process.env[foo]) // path to node
process.env
包含node
:
{
node: '/Users/jasper.wang/.nvm/versions/node/v8.16.0/bin/node',
// ...
}
有关process.env
的完整输出,请查看this Gist which I made。
更新:
这是一个Webpack问题:
Webpack无法识别扩展环境变量,因此已得到遵守
console.log(process.env.extended_variable)
到
console.log(undefined);
答案 0 :(得分:0)
解决方案: 如果您使用的是Webpack,则可以使用Webpack EnvironmentPlugin
在我的特定情况下,我也在使用dotenv和babel。因此,我通过使用dotenv-webpack和babel inline dot env plugin对其进行了修复。
答案 1 :(得分:0)
plugins.push(new webpack.DefinePlugin({
process: {
env: {
node: JSON.stringify(process.env.node),
},
},
}));
在您的webpack配置内的插件中也推送这些设置,然后它将对您有用。