Vue3+Vite中.env变量不生效,如何正确刷新使其可访问?
解决Vite中.env变量VITE_STRIPE_KEY返回undefined的问题
以下是针对该问题的具体解决步骤:
- 重启Vite开发服务器:Vite仅在启动阶段加载.env文件,修改.env后必须终止当前Vite服务(按
Ctrl+C),再重新执行npm run dev或对应启动命令。你执行的php artisan config:clear和php artisan cache:clear是清理Laravel后端缓存,与Vite的前端环境变量加载逻辑无关。 - 检查变量命名与格式:确认
VITE_STRIPE_KEY拼写完全正确(VITE_前缀必须大写,后续部分大小写敏感),变量值前后无多余空格。若你的Stripe密钥包含特殊字符,需用双引号包裹,例如VITE_STRIPE_KEY="sk_test_xxxxxx"。 - 确认.env文件位置:确保.env文件放在项目根目录(与vite.config.js、package.json同级),Vite不会自动加载子目录下的.env文件。
- 排查模式专属环境文件:若使用Vite的环境模式(如development/production),检查是否存在
.env.development或.env.production文件,这类文件中的变量会覆盖主.env的同名变量,需确保目标模式文件中也包含VITE_STRIPE_KEY。 - 清除浏览器缓存:强制刷新页面(
Ctrl+Shift+R)或使用无痕模式访问,避免浏览器缓存旧的前端打包资源。 - 验证变量加载状态:可在vite.config.js中添加代码打印环境变量,确认Vite是否正确读取到
VITE_STRIPE_KEY:
重启Vite后查看控制台输出,即可验证变量是否被正确加载。console.log('VITE_STRIPE_KEY:', process.env.VITE_STRIPE_KEY); export default defineConfig({ // 你的Vite配置内容 });
内容的提问来源于stack exchange,提问作者maganthro
相关产品推荐
相关产品推荐

