背景:
在vue3 + vite项目中,通过import.meata.env.VITE_XX的方法可以访问到VITE_XX变量,但是打印import.meata.env,发现打印内容还有BASE_URL等变量,并可以通过import.meata.env.BASE_URL的方式获取,但是.env.development文件是没有BASE_URL变量的。
尝试1:
vscdoe全局搜索BASE_URL,没有查询到。
背景:
在vue3 + vite项目中,通过import.meata.env.VITE_XX的方法可以访问到VITE_XX变量,但是打印import.meata.env,发现打印内容还有BASE_URL等变量,并可以通过import.meata.env.BASE_URL的方式获取,但是.env.development文件是没有BASE_URL变量的。
尝试1:
vscdoe全局搜索BASE_URL,没有查询到。
在 Vite 项目中,import.meta.env
主要用于访问由 Vite 注入的环境变量。默认情况下,Vite 提供了一些预定义的环境变量,如 BASE_URL
、PROD
、DEV
等,这些变量在开发环境和生产环境中都是可用的。
对于 VITE_
前缀的环境变量,例如 VITE_XX
,这些是由用户自定义的,并且只有在 Vite 开发环境中可用。当构建应用程序以进行生产部署时,这些以 VITE_
开头的环境变量将不会包含在最终的构建产物中。
对于你提到的 BASE_URL
,这是一个特殊的环境变量,它在 Vue CLI 和 Vite 项目中都被预定义。BASE_URL
主要用于指定应用程序的基础 URL,它通常被用于处理 API 请求的 URL 前缀。在开发环境中,它的值通常默认为 /
,但在生产环境中,你可以通过设置环境变量来覆盖这个值。
至于为什么你在 .env.development
文件中没有找到 BASE_URL
变量,这是因为 BASE_URL
并不是通过 .env
文件来设置的。在 Vue CLI 和 Vite 项目中,BASE_URL
是一个预定义的环境变量,其值可以在项目的配置文件(如 vue.config.js
或 vite.config.js
)中进行设置,或者直接在构建命令中通过 --base-url
参数来指定。
因此,答案是:import.meta.env
确实可以获取到非 VITE 开发的环境变量,如 BASE_URL
。这个变量是 Vite 和 Vue CLI 预定义的,你可以在项目的配置文件中或构建命令中设置其值。而 VITE_
前缀的环境变量则是由用户自定义的,并且只在 Vite 开发环境中可用。
3 回答3.2k 阅读✓ 已解决
5 回答2.5k 阅读
4 回答3.3k 阅读
3 回答1.8k 阅读✓ 已解决
1 回答2.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
2 回答1.7k 阅读✓ 已解决
这个base是vite.config.js里面的base配置项,默认是'/'
vite配置