【问题标题】:process.env undefined in deployed React app in Azure在 Azure 中部署的 React 应用程序中未定义 process.env
【发布时间】:2021-04-24 14:46:29
【问题描述】:

我有一个 Node 应用,后端使用 Express,前端使用 React。

在本地,我有一个环境变量所在的 .env 文件。对于 Azure App Service,我只是将变量保存为配置,以便 Express 可以获取 env 变量。但是,React 看不到变量,并且它是未定义的,因为 Azure DevOps 中没有 .env 文件。

我已经尝试了以下方法:

  • 在应用服务配置中为 React 保存的变量设置为 REACT_APP_VARIABLE
  • 在 Azure 构建管道中,我设置了一个构建变量并使用 PowerShell 任务设置了 $env:VARIABLE
  • 更新 webpack 以使用 dotenv-webpack 插件

所有方法都不起作用。我该怎么做?

【问题讨论】:

  • 嗨,这个问题怎么样?下面的回答能解决你的问题吗?如果是,您可以 Accept it as an Answer ,这样可以帮助遇到相同问题的其他社区成员,我们可以存档此线程,谢谢。

标签: reactjs webpack azure-devops environment-variables azure-web-app-service


【解决方案1】:

作为一种解决方法,我们可以创建.env 文件并通过power shell 脚本配置文件内容。

步骤:在管道变量页面下设置变量->添加任务电源shell并输入以下脚本创建.env文件并设置内容。

 New-Item -Path $(System.DefaultWorkingDirectory) -Name "env.json" -Force -Value @'
 {
  "REACT_APP_SOMW_KEY": "$(REACT_APP_SOMW_KEY)",
 }
 '@
 Get-Content -Path $(System.DefaultWorkingDirectory)\env.json

我们也可以查看thread

【讨论】:

    猜你喜欢
    • 2021-07-14
    • 2011-07-24
    • 1970-01-01
    • 1970-01-01
    • 2020-02-04
    • 2015-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多