vite添加环境变量import.meta.env方式

 更新时间:2026年01月08日 09:05:20   作者:kekezhu0000  
Vite通过`import.meta.env`对象暴露环境变量,可以在不同文件中配置不同环境下的变量,便于维护和使用,配置环境变量和模式时,需要注意在字符串中使用`import.meta.env.VITE_APP_TITLE`的方式,避免打包报错

vite添加环境变量import.meta.env

在不同的文件里面配置不同的环境变量,可以让我们的配置更加容易维护和使用,这里我们说下vite配置环境变量和模式是怎么配置的。

Vite 在一个特殊的 import.meta.env 对象上暴露环境变量,官网上的东西咱这里就不抄了,O(∩_∩)O哈哈~

我们这里直接说怎么做的,毕竟官网上没有实际使用的例子,在下在实际使用的时候还遇到点问题,当然也可以说是自己没用对吧。

package.json里面的scripts修改

增加多个环境模式,如:

"scripts": {
    "dev": "vite serve --mode development",
    "test": "vite serve --mode test",
    "ppe": "vite serve --mode ppe",
    "prod": "vite serve --mode production",
    "build:dev": "vue-tsc --noEmit && vite build --mode development",
    "build:test": "vue-tsc --noEmit && vite build --mode test",
    "build:ppe": "vue-tsc --noEmit && vite build --mode ppe",
    "build:prod": "vue-tsc --noEmit && vite build --mode production",
    "serve": "vite preview"
  }

在项目目录下增加环境变量的文件

如:

  • .env.development
# 开发环境变量
VITE_APP_TITLE=记账簿development
  • .env.test
# 质控环境变量
VITE_APP_TITLE=记账簿test
  • .env.production
# 生产环境变量
VITE_APP_TITLE=记账簿

在vue里面使用

比如:

console.log('VITE_APP_TITLE:' + import.meta.env.VITE_APP_TITLE);

这里面有个问题需要注意:

就是字符串里面不能直接用import.meta.env.的方式使用,不然打包的时候会报错,可以用’import.meta\u200b.env.VITE_APP_TITLE’的方式使用,这个其实在官网上有说到,不过没怎么用到的话时间一长就容易忘了,贴下报错信息,方便后面复查:

D:\study\gitee\study\vite2vue3study>npm run build:prod

> vite2vue3study@0.0.0 build:prod D:\study\gitee\study\vite2vue3study
> vue-tsc --noEmit && vite build --mode production

vite v2.5.5 building for production...
✓ 16 modules transformed.
[rollup-plugin-dynamic-import-variables] Unexpected token (12:18)
file: D:/study/gitee/study/vite2vue3study/src/views/About.vue?vue&type=script&lang.ts:12:18
error during build:
SyntaxError: Unexpected token (12:18)
    at Parser.pp$4.raise (D:\study\gitee\study\vite2vue3study\node_modules\rollup\dist\shared\rollup.js:16958:13)
    at Parser.pp.unexpected (D:\study\gitee\study\vite2vue3study\node_modules\rollup\dist\shared\rollup.js:14466:8)
    at Parser.pp.expect (D:\study\gitee\study\vite2vue3study\node_modules\rollup\dist\shared\rollup.js:14460:26)
    at Parser.pp$3.parseExprList (D:\study\gitee\study\vite2vue3study\node_modules\rollup\dist\shared\rollup.js:16827:12)
    at Parser.pp$3.parseSubscript (D:\study\gitee\study\vite2vue3study\node_modules\rollup\dist\shared\rollup.js:16192:25)
    at Parser.pp$3.parseSubscripts (D:\study\gitee\study\vite2vue3study\node_modules\rollup\dist\shared\rollup.js:16149:24)
    at Parser.pp$3.parseExprSubscripts (D:\study\gitee\study\vite2vue3study\node_modules\rollup\dist\shared\rollup.js:16133:21)
    at Parser.pp$3.parseMaybeUnary (D:\study\gitee\study\vite2vue3study\node_modules\rollup\dist\shared\rollup.js:16096:17)
    at Parser.pp$3.parseExprOps (D:\study\gitee\study\vite2vue3study\node_modules\rollup\dist\shared\rollup.js:16029:19)
    at Parser.pp$3.parseMaybeConditional (D:\study\gitee\study\vite2vue3study\node_modules\rollup\dist\shared\rollup.js:16012:19)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! vite2vue3study@0.0.0 build:prod: `vue-tsc --noEmit && vite build --mode production`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the vite2vue3study@0.0.0 build:prod script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\Administrator\AppData\Roaming\npm-cache\_logs\2021-09-17T08_00_39_340Z-debug.log

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Vue动态加载异步组件的方法

    Vue动态加载异步组件的方法

    这篇文章主要介绍了Vue动态加载异步组件的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-11-11
  • Vue.js实现价格计算器功能

    Vue.js实现价格计算器功能

    这篇文章主要为大家详细介绍了Vue.js实现价格计算器功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • vue中的slot封装组件弹窗

    vue中的slot封装组件弹窗

    这篇文章主要介绍了vue中的slot封装组件弹窗,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • Vue开发Sort组件代码详解

    Vue开发Sort组件代码详解

    这篇文章主要介绍了Vue开发Sort组件,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2021-10-10
  • vue的状态管理模式vuex

    vue的状态管理模式vuex

    本篇文章主要介绍了深入理解vue的状态管理模式vuex,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11
  • vue2.0使用swiper组件实现轮播的示例代码

    vue2.0使用swiper组件实现轮播的示例代码

    下面小编就为大家分享一篇vue2.0使用swiper组件实现轮播的示例代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • uni-popup手写菜鸟上门取件时间选择器

    uni-popup手写菜鸟上门取件时间选择器

    这篇文章主要为大家介绍了uni-popup手撸了一个菜鸟上门取件时间选择器,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • vue+element实现打印页面功能

    vue+element实现打印页面功能

    这篇文章主要介绍了vue+element实现打印页面功能,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2019-05-05
  • vue 3 effect作用与原理解析

    vue 3 effect作用与原理解析

    Vue3的Effect是其响应式系统的核心,负责依赖追踪和自动响应,它通过ReactiveEffect类封装副作用逻辑,实现依赖收集和触发更新,本文介绍vue 3 effect作用与原理解析,感兴趣的朋友一起看看吧
    2025-02-02
  • 浅析vue中的nextTick

    浅析vue中的nextTick

    这篇文章主要介绍了vue中nextTick的相关资料,帮助大家更好的理解和使用vue框架,感兴趣的朋友可以了解下
    2020-12-12

最新评论