Vue项目中没有设置process.env但是还是可以获取到的原因分析及解决方案

 更新时间:2025年05月13日 10:22:40   作者:清风细雨_林木木  
虽然没有在 Vue 项目中显式设置 process.env,但依然能获取到一些 process.env.xxx是因为Vue CLI 或 Vite 在构建时自动注入了环境变量,本文给大家分享解决方案,感兴趣的朋友一起看看吧

虽然没有在 Vue 项目中显式设置 process.env,但依然能获取到一些 process.env.xxx,是因为:

原因:Vue CLI 或 Vite 在构建时自动注入了环境变量

Vue CLI 项目(使用 webpack)

Vue CLI 默认会在构建过程中注入所有以 VUE_APP_ 开头的 .env 变量,还有几个内建变量:

  • process.env.NODE_ENV:当前构建环境(如 developmentproduction),始终可用
  • process.env.BASE_URL:基础路径
  • process.env.VUE_APP_*:你自定义的变量(例如:VUE_APP_API_URL

Vite 项目

Vite 的环境变量行为稍有不同:

  • .env 中的所有变量会自动注入 import.meta.env
  • 但只有以 VITE_ 开头的变量才会暴露到客户端代码中
# .env
VITE_API_URL=https://api.example.com

在代码中:

// 对于 Vue + Vite 项目
console.log(import.meta.env.VITE_API_URL);

为什么还能用 process.env?

在 Vite 项目中,Vite 会模拟 process.env.NODE_ENV 供部分工具兼容,你可能还能访问:

console.log(process.env.NODE_ENV);  // 'development' | 'production'

但其他自定义变量不会自动挂载到 process.env 中。

如何正确使用? Vue CLI:

VUE_APP_API_URL=https://example.com
console.log(process.env.VUE_APP_API_URL);

Vite:

VITE_API_URL=https://example.com
console.log(import.meta.env.VITE_API_URL);

📌 总结

构建工具环境变量写法获取方式
Vue CLIVUE_APP_process.env.VUE_APP_XXX
ViteVITE_import.meta.env.VITE_XXX
内建变量NODE_ENV都能访问到(Vite 模拟)

到此这篇关于Vue项目中没有设置process.env但是还是可以获取到的原因分析及解决方案的文章就介绍到这了,更多相关Vue没有设置process.env但是还是可以获取内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 关于element el-input的autofocus失效的问题及解决

    关于element el-input的autofocus失效的问题及解决

    这篇文章主要介绍了关于element el-input的autofocus失效的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • 在pycharm中开发vue的方法步骤

    在pycharm中开发vue的方法步骤

    这篇文章主要介绍了在pycharm中开发vue的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • Vue利用Web Speech API实现文字朗读功能

    Vue利用Web Speech API实现文字朗读功能

    在 Vue 页面中实现文字朗读(Text-to-Speech,TTS)可以通过浏览器的 Web Speech API 实现,下面小编就来和大家简单讲讲具体实现步骤吧
    2025-02-02
  • Vue3实现全局公共函数的完整方案(创建、挂载、引用、使用)

    Vue3实现全局公共函数的完整方案(创建、挂载、引用、使用)

    本文详细介绍了如何在Vue3项目中创建、挂载、引用和使用全局公共函数,包括标准目录结构、创建公共函数、全局注册、页面使用以及规范,通过本文,新手开发者可以快速搭建企业级规范工具库,需要的朋友可以参考下
    2026-03-03
  • vue中radio根据动态值绑定checked无效的解决

    vue中radio根据动态值绑定checked无效的解决

    这篇文章主要介绍了vue中radio根据动态值绑定checked无效的解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • Vue中的虚拟DOM、diff算法、key的作用详解

    Vue中的虚拟DOM、diff算法、key的作用详解

    这篇文章主要介绍了Vue中的虚拟DOM、diff算法、key的作用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • 100行代码实现一个vue分页组功能

    100行代码实现一个vue分页组功能

    今天用vue来实现一个分页组件,总体来说,vue实现比较简单,样式部分模仿了elementUI。接下来本文通过实例代码给大家介绍100行代码实现一个vue分页组功能,感兴趣的朋友跟随小编一起看看吧
    2018-11-11
  • vue点击按钮跳转到另一个vue页面实现方法

    vue点击按钮跳转到另一个vue页面实现方法

    这篇文章主要给大家介绍了关于vue点击按钮跳转到另一个vue页面的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-08-08
  • 解决vue中使用less/sass及使用中遇到无效的问题

    解决vue中使用less/sass及使用中遇到无效的问题

    这篇文章主要介绍了解决vue中使用less/sass及使用中遇到无效的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • Vue如何实现多页面配置以及打包方式

    Vue如何实现多页面配置以及打包方式

    这篇文章主要介绍了Vue如何实现多页面配置以及打包方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10

最新评论