Vite配置环境变量以及动态更新html数据

ops/2024/10/21 1:58:14/

一、设置配置文件

javascript">// .env
// 公共配置文件,总是生效
VITE_BASE_API_URL='http://localhost:3000'// .env.development
VITE_BASE_API_URL='/api'
VITE_TAB_TITLE='development title'// .env.production
VITE_BASE_API_URL='/api'
VITE_TAB_TITLE='production title'

二、安装插件

npm i create-html-plugin -D

三、在Vite.config.ts中设置获取环境变量

javascript">import { defineConfig, loadEnv } from 'vite'
import vue from '@vitejs/plugin-vue'
import { resolve } from 'path'
import { createHtmlPlugin } from 'vite-plugin-html'// 获取环境变量文件中的键值对
const getViteEnv = (mode: string, key: string) => {return loadEnv(mode, process.cwd())[key]
}// https://vitejs.dev/config/
export default defineConfig(({ mode }) => {console.log(getViteEnv(mode, 'VITE_TAB_TITLE'))return {plugins: [vue(),// html插件,负责更新不同环境下的title等数据createHtmlPlugin({inject: {data: {systemConfig: {tabTitle: getViteEnv(mode, 'VITE_TAB_TITLE')}}}})],resolve: {alias: {'@': resolve(__dirname, 'src')}}}
})

四、使用

    <title><%= systemConfig.tabTitle %></title>


http://www.ppmy.cn/ops/55824.html

相关文章

springcloud 面试经常被问问题

Spring Cloud 是一个基于 Spring Boot 的微服务架构解决方案&#xff0c;包含了许多用于构建和管理微服务的工具和框架。在面试中&#xff0c;与 Spring Cloud 相关的问题通常会涉及其核心概念、组件、常用模式和解决方案。以下是一些在 Spring Cloud 面试中经常被问到的问题及…

字节跳动 AML 前端 一面

时长55mins 1. 自我介绍 1. 怎么接触的前端&#xff1f;学了多久&#xff1f; 1. 问项目 1. 为什么要做组件库&#xff1f; 1. 问到我的组件库和AntD之类的有什么区别&#xff0c;我说区别可能就是我的功能更少&#xff1f;hhhh 1. 设计一个组件的思路&#x…

从零开始学数据结构系列之第四章《 图的遍历总代码》

文章目录 概念回顾深度优先遍历&#xff08;DFS&#xff09;概念图的深度优先遍历深度优先遍历算法步骤 广度优先遍历&#xff08;BFS&#xff09;概念广度优先遍历算法步骤 程序总代码往期回顾 概念回顾 ​   图的遍历是和树的遍历类似&#xff0c;我们希望从图中某一顶点出…

LVS+Keepalived集群

Keepalived双机热备 Keepalived实现原理刨析 Keepalived采用VRRP热备份协议实现Linux服务器的多机热备功能 Keepalived案例分析 Keepalived可以实现多机热备&#xff0c;每个热备组可有多台服务器 双机热备的故障切换是由虚拟IP地址的漂移来实现&#xff0c;适用于各种应用…

paraview将raw数据转为vtk

ParaView 是一个强大的可视化工具&#xff0c;可以转换各种数据格式&#xff0c;包括将原始数据转换为 VTK 文件格式。以下是一个简单的 Python 脚本&#xff0c;使用 ParaView Python 接口来转换 raw 数据为 VTK 文件&#xff1a; # 导入ParaView模块 import paraview from p…

ARTS Week 36

unsetunsetAlgorithmunsetunset 本周的算法题为 1528. 重新排列字符串 给你一个字符串 s 和一个 长度相同 的整数数组 indices 。 请你重新排列字符串 s &#xff0c;其中第 i 个字符需要移动到 indices[i] 指示的位置。 返回重新排列后的字符串。 img 示例 1&#xff1a;输入&…

VPN是什么?

VPN&#xff0c;全称Virtual Private Network&#xff0c;即“虚拟私人网络”&#xff0c;是一种在公共网络&#xff08;如互联网&#xff09;上建立加密、安全的连接通道的技术。简单来说&#xff0c;VPN就像是一条在公共道路上铺设的“秘密隧道”&#xff0c;通过这条隧道传输…

ruoyi实用性美化记录

一、将tab页中操作区的底色变为亮灰色 ruoyi-ui/src/layout/index.vue 中 <app-main/>改为<app-main style"background: #EEE"/> 二、对应的将form加上底色加边角弧度 ruoyi-ui/src/assets/styles/ruoyi.scss .el-form{border-radius: 3px;padding:…