You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vue 2.7读取操作系统环境变量的问题

Vue 2.7读取操作系统环境变量的问题

看起来你遇到的问题是Vue项目优先读取了.env文件里的变量值,而不是你操作系统中定义的环境变量。我来帮你梳理下原因和解决办法:

先明确Vue CLI的核心规则(Vue 2.7通常搭配Vue CLI)

Vue CLI只会把以VUE_APP_开头的环境变量注入到你的应用中,不管是系统环境变量还是.env文件里的。而且理论上,系统环境变量的优先级是高于.env文件的,但你现在没读到系统变量,大概率是以下几个原因:

可能的原因&解决步骤

  • 系统环境变量没加VUE_APP_前缀
    如果你在操作系统里定义的变量名是GATEWAY_ADDRESS_TEST_TWO而不是VUE_APP_GATEWAY_ADDRESS_TEST_TWO,那Vue CLI根本不会把它注入到应用里,自然只会读.env里的gwatt。赶紧给系统变量加上这个前缀试试。

  • 终端没重启,系统变量没生效
    如果你是在打开终端之后才设置的系统环境变量,那这个终端是读不到新变量的。你得把当前启动Vue项目的终端关掉,重新打开一个新终端,再启动项目,这样系统变量才能被读取到。

  • 先验证终端里的变量是否生效
    重启终端后,先别着急启动项目,先在终端里验证下变量是否能被读取到:

    • Windows(cmd)里输入:echo %VUE_APP_GATEWAY_ADDRESS_TEST_TWO%
    • Windows(PowerShell)里输入:echo $env:VUE_APP_GATEWAY_ADDRESS_TEST_TWO
    • Linux/macOS里输入:echo $VUE_APP_GATEWAY_ADDRESS_TEST_TWO
      如果输出的是你设置的GAT,说明变量没问题,再启动Vue项目就能读到系统变量了。

补充说明

如果上面的步骤都做了还是读不到系统变量,那你可以检查下是不是在vue.config.js里做了一些自定义的环境变量配置,可能影响了默认的加载逻辑。不过这种情况比较少见,先把前面几个基础问题排查了再说。

备注:内容来源于stack exchange,提问作者Djole Pi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.23 10:19:28