vue3+vite使用环境变量.env的一些配置情况详细说明

目录
  • 1、设置.env中的内容信息 注意vue3+vite 必须使用VITE开头的配置信息 否则无法获取
  • 2、在 vite 中使用环境变量,可以用 import.meta.env,有四种环境变量,如下所示:
  • 3、使用环境变量
  • 4、配置env.d.ts文件,为环境变量增加智能提示
  • 5、在package.json中配置模式
  • 补充:Vue3的Env环境变量配置的应用
  • 总结

在项目文件中新建文件.env .env.pro 两个文件其中.env 是默认设置 .env.pro 为正式环境设置

1、设置.env中的内容信息 注意vue3+vite 必须使用VITE开头的配置信息 否则无法获取

NODE_ENV = "env"	//
VITE_NODE_ENV = "env"	//VITE开头的给vue3+vite使用

如果不想使用VITE开头自己修改就在vite.config.ts文件中添加envPrefix:“APP_”

//vite.config.ts
export default defineConfig({
  plugins: [vue()],
  envPrefix:"APP_",//APP_  为自定义开头名
})

2、在 vite 中使用环境变量,可以用 import.meta.env,有四种环境变量,如下所示:

MODE,用来指明现在所处于的模式,一般通过它进行不同环境的区分,比如 dev、test、pre、prd 等等,默认为:“development”

BASE_URL,用来请求静态资源初始的 url

PROD,用来判断当前环境是否是正式环境

DEV,用来与 PROD 相反的环境

SSR,用来判断是否是服务端渲染的环境

3、使用环境变量

使用 import.meta.env.VITE_NODE_ENV 获取环境变量

console.log( import.meta.env) //查看相关信息 这里不显示非VITE开头的变量

//老版本的vue2+webpack的情况

还是使用 process.env.NODE_ENV

console.log( process.env) //查看相关信息

4、配置env.d.ts文件,为环境变量增加智能提示

正常使用的时候没有提示信息,想增加提示信息在vite-env.d.ts或者env.d.ts进行如下配置即可

/// <reference types="vite/client" />

interface ImportMetaEnv {
  readonly VITE_NODE_ENV:string;//定义提示信息 数据是只读的无法被修改
  //多个变量定义多个...
}

declare module '*.vue' {
  import type { DefineComponent } from 'vue'
  const component: DefineComponent<{}, {}, any>
  export default component
}

5、在package.json中配置模式

上面使用的时候是固定写法 需要切换.env 和 .env.pro 中不同的变量信息 在打包中配置 如下:

使用 --mode pro 进行设置

 "scripts": {
    "serve": "vite",	//未指定默认取.env中的配置
    "dev": "vite --mode dev",   // 取 .env.dev文件中的配置
    "pro": "vite --mode pro",   // 取 .env.pro文件中的配置
    "build": "vue-tsc --noEmit && vite build",	//未指定默认取.env中的配置
    "build:dev": "vue-tsc --noEmit && vite build --mode dev",    // build的时候取dev的配置
    "build:pro": "vue-tsc --noEmit && vite build --mode pro", 	// build的时候取pro的配置
    "preview": "vite preview"
  },

最后, 想要在提交代码时忽略本地.env文件,还要在.gitignore文件中添加.local

node_modules
dist
dist-ssr
*.local

补充:Vue3的Env环境变量配置的应用

.env(# 所有环境默认)

# 所有环境默认

# 页面 title 前缀
VUE_APP_TITLE=某某某

# 网络请求公用地址
VUE_APP_API= /

.env.development(# 开发环境)

# 开发环境

# 指定构建模式
VITE_NODE_ENV=development

# 页面 title 前缀
VUE_APP_TITLE=某某某

# 网络请求公用地址
VITE_APP_API=/api/

# 首页是否显示登录
VITE_SHOW_LOGIN='yes'

VITE_SOME_APPENV='1000006'

.env.production(# 生产环境)

# 构建预览页面

# 指定构建模式 production
VITE_NODE_ENV=test

# 页面 title 前缀
VUE_APP_TITLE=某某某

# 网络请求公用地址
VITE_APP_API=/

# 首页是否显示登录
VITE_SHOW_LOGIN='no'

VITE_SOME_APPENV='1000002'

在页面中需要参与环境判断时则可使用

console.log(import.meta.env.VITE_NODE_ENV)

打印结果

总结

到此这篇关于vue3+vite使用环境变量.env的一些配置情况详细说明的文章就介绍到这了,更多相关vue3+vite使用环境变量.env配置内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Vue中.env、.env.development及.env.production文件说明

    目录 0.介绍 2.命名规则 3.关于文件的加载: 4.关于使用 4.1 在.vue文件中使用 4.2 在.js文件中 5.自定义环境 总结 0.介绍 模式是Vue CLI项目中一个重要的概念,默认情况下,一个Vue CLI项目有三种模式: developemt 模式用于vue-cli-service serve test 模式用于vue-cli-service test:unit production 模式用于vue-cli-service build 和vue-cli-service tes

  • dotenv源码解读从.env文件中读取环境变量

    目录 引言 使用 源码 config parse 总结 引言 dotenv从.env文件中读取环境变量,然后将其添加到process.env中.这是一个非常简单的库,但是它在开发中非常有用,因为它允许你在.env文件中存储敏感信息,而不是将其存储在代码中. 现在很多库都支持.env文件,例如create-react-app,vue-cli,next.js等. 源码地址:github.com/motdotla/do… 使用 根据README,dotenv只有两个方法: config:读取.env文

  • vue项目多环境配置(.env)的实现

    目录 什么是多环境配置,为什么要多环境配置? .env 文件配置到哪里 .env文件如何配置,配置多少个? .env文件的配置 如何配置运行环境 如何获取全局配置项的值 如何运行环境 没接触多环境配置前,感觉好高大上,真正操作后感觉也就那么回事,在此把自己遇到的问题和解决方案叙述一下,有不对的地方欢迎各位大佬指出. 什么是多环境配置,为什么要多环境配置? 最常见的多环境配置,就是开发环境配置,和生产环境配置(也就是上线的配置),很多情况下我们开发环境下的域名,和一些配置项,和我们生产模式下的不同

  • vue-cli 环境变量 process.env的使用及说明

    目录 vue-cli 环境变量 process.env使用 vue-cli配置环境变量process.env.xxx 总结 vue-cli 环境变量 process.env使用 参考官网:  https://cli.vuejs.org/zh/guide/mode-and-env.html#在客户端侧代码中使用环境变量 话不多说直接看代码 在package中的配置如下图 举个本地运行的例子.env.serve: 注意: 除了 VUE_APP_* 变量之外,在你的应用代码中始终可用的还有两个特殊的变

  • vue3+vite使用环境变量.env的一些配置情况详细说明

    目录 1.设置.env中的内容信息 注意vue3+vite 必须使用VITE开头的配置信息 否则无法获取 2.在 vite 中使用环境变量,可以用 import.meta.env,有四种环境变量,如下所示: 3.使用环境变量 4.配置env.d.ts文件,为环境变量增加智能提示 5.在package.json中配置模式 补充:Vue3的Env环境变量配置的应用 总结 在项目文件中新建文件.env .env.pro 两个文件其中.env 是默认设置 .env.pro 为正式环境设置 1.设置.en

  • Linux下Java环境变量的安装与配置

    安装 以JDK1.6.0_43为例 下载jdk-6u43-linux-x64.bin,http://www.oracle.com/technetwork/java/javase/downloads/index.html 增加可执行权限 chmod +x jdk-6u43-linux-x64.bin, 执行 ./jdk-6u43-linux-x64.bin 生成目录jdk1.6.0_43 拷贝到/usr/share下,mv jdk1.6.0_43 /usr/share 另外,jdk-6u43-li

  • Node.js中环境变量process.env的一些事详解

    前言 最近这两天在和运维GG搞部署项目的事儿.碰到一个问题就是,咱们的dev,uat,product环境的问题. 因为是前后端分离,所以在开发和部署的过程中会有对后端接口的域名的切换问题.折腾了一下午,查询了各种资料这才把这Node环境变量process.env给弄明白. 下面这就做个问题解决的记录.希望能对这个不明白的人有所帮助.话不多说了,来一起看看详细的介绍吧. Node环境变量 首先,咱们在做react.vue的单页应用开发的时候,相信大家对配置文件里的process.env并不眼生.

  • vue3 Vite 进阶rollup命令行使用详解

    目录 rollup介绍 以命令行方式打包 Tree Shaking Rollup 的命令行使用 命令行 format 格式 rollup.config.js 设置/获取环境变量 插件 plugins rollup介绍 开源类库优先选择 以 ESM 标准为目标的构建工具 Tree Shaking 以命令行方式打包 安装 rollup npm install -g rollup 创建 index.js 文件 import path from "path"; console.log(&quo

  • Vite多环境配置项目高定制化能力详解

    目录 业务背景 多环境场景的业务形态 Vite多环境方案实现 多模式文件配置 自定义环境变量 Vite默认环境变量 通过插件透传环境变量 客户端环境差异定制 效果图 解决的业务场景思考 业务背景 近些年来,随着前端工程架构发展,使得前端项目中也能拥有如后端工程的模块能力.正所谓 “能力(越)越大(来),责任(越)越大(卷)”,现在的前端工程不仅仅要满足业务需求,还伴随更多复杂的环境适配问题,例如: api请求的域名会根据不同环境而不同: 线上环境和测试环境在打包策略有所不同「如线上要隔离sour

  • Windows Powershell 环境变量

    传统的控制台一般没有象Powershell这么高级的变量系统.它们都是依赖于机器本身的环境变量,进行操作 .环境变量对于powershell显得很重要,因为它涵盖了许多操作系统的细节信息.此外,powershell中的变量只存在于powershell内部的会话中,一旦powershell关闭,这些变量就会自生自灭.但是如果环境变量被更新了,它会继续保存在操作系统中,即使其它程序也可以调用它. 读取特殊的环境变量 通过环境变量读取Windows操作系统的安装路径,和默认应用程序的安装路径. PS>

  • vue-cli3环境变量与分环境打包的方法示例

    第一步 : 了解环境变量概念 我们可以根目录中的下列文件来指定环境变量: .env # 在所有的环境中被载入 .env.local # 在所有的环境中被载入,但会被 git 忽略 .env.[mode] # 只在指定的模式中被载入 .env.[mode].local # 只在指定的模式中被载入,但会被 git 忽略 环境变量文件只包含环境变量的"键=值"对: FOO=bar VUE_APP_SECRET=secret // 只有VUE_APP_开头的环境变量可以在项目代码中直接使用 除

  • 10分钟搞定让你困惑的 Jenkins 环境变量过程详解

    前言 Jenkins, DevOps 技术栈的核心之一,CI/CD 离不开编写 Pipeline 脚本,上手 Jenkins ,简单查一下文档,你就应该不会被 agent,stages,step 这类关键词弄懵,也能很快构建出 pipeline 的骨架 但是当向骨架中填充内容的时候,尤其如何利用环境变量(系统内置 | 自定义),多数人都会变得比较混乱,浪费很多时间,本文就帮助大家快速通关环境变量 准备 如果你想一边阅读本文,一边实践,但是没有 Jenkins 服务可用,又想快速尝试,可以应用 D

  • Nest.js环境变量配置与序列化详解

    环境变量配置简述 程序在不同的环境下需要不同的环境变量,例如生产环境.测试环境以及开发环境所需要不同的数据库信息:链接地址.链接端口号.登录用户名和密码相关信息.为了解决这个问题需要进行相关操作. 在 Nest 中最佳方案创建一个 ConfigModule,该 ConfigModule 公开一个 ConfigService ,在 ConfigService 加载特有环境的 .env 文件. Nest 提供了 @nestjs/config 开箱即用的依赖包. 配置 npm 生态有很多相关的依赖包,

  • Linux环境变量和进程地址空间介绍

    目录 Linux环境变量和进程地址空间 通过代码获取环境变量 进程地址空间 关于为什么是虚拟地址,而不是物理地址? Linux环境变量和进程地址空间 //查看进程pid和父进程 [dy@VM-12-10-centos jincheng_12_5]$ ps ajx | head -1 && ps axj | grep 3669470 PPID PID PGID SID TTY TPGID STAT UID TIME COMMAND 3669469 3669470 3669470 366943

随机推荐