vite vue3进行多环境打包配置

news2024/11/26 22:23:44

需求:

对此vite创建的vu3项目进行构建,项目分为四个环境:本地、测试、预发、生产

1.在项目根目录创建四个文件夹

.env.development

.env.test

.env.pre

.env.production

2.配置不同环境的 地址和打包文件名

具体例子如下:

#.env.development 文件
# 本地环境接口地址(这里是使用了代理,解决跨域问题)

# 业务中台本地环境接口地址
VITE_API_URL = /api

# 打包文件名
VITE_APP_NAME = 'dist_dev'
#.env.test 文件
# 测试环境
VITE_ENV = test

# 测试环境接口地址
VITE_API_URL = 'http://192.168.0.0:8088'

# 打包文件名
VITE_APP_NAME = 'dist_test'

3.package.json 配置打包命名

"scripts": {
		"dev": "vite --mode development",
		"test": "vite --mode test",
		"pre": "vite --mode pre",
		"prod": "vite --mode production",
		"build:dev": "vite build --mode development",
		"build:prod": "vite build --mode production",
		"build:pre": "vite build --mode pre",
		"build:test": "vite build --mode test ",
		"preview": "vite preview"
	},

 4.在vite.config.js 进行 vite 的相关配置

注意:这里需要确认项目是否安装了这3个依赖

npm install @types/node --save-dev
npm install unplugin-auto-import -D
npm install vite-plugin-vue-setup-extend -D

import vue from '@vitejs/plugin-vue';
import AutoImport from 'unplugin-auto-import/vite';
import vueSetupExtend from 'vite-plugin-vue-setup-extend';
import { resolve } from 'path';
import { defineConfig, loadEnv } from 'vite';

const pathResolve = (dir) => {
	return resolve(__dirname, '.', dir);
};

const alias = {
	'/@': pathResolve('./src/'),
};

const viteConfig = defineConfig(({ mode }) => {
	const env = loadEnv(mode, process.cwd());
	// ****打包文件名称****
	let fileName = 'dist'
	// 兼容性,以防打包崩溃
	fileName = env.VITE_APP_NAME
	return {
		plugins: [
			vue(),
			vueSetupExtend(),
			AutoImport({
				imports: ['vue', 'vue-router'],
			}),
		],
		define: {
			'process.env': {}
		},
		root: process.cwd(),
		assetsInclude: '**/*.xlsx',
		// outputDir: fileName,
		resolve: { alias },
		base: env.VITE_ENV === 'production' ? './' : './',
		server: {
			host: '0.0.0.0',
			port: 8888,
			open: false,
			proxy: {
				'/api': {
                    target: 'http://localhost:3000', // 指定要代理的目标地址
                    changeOrigin: true, // 是否改变请求的来源
                    rewrite: (path) => path.replace(/^\/api/, ''), // 可选的路径重写规则
                },
			},
		},
		css: { preprocessorOptions: { css: { charset: false } } },
        //****这里进行设置文件名****
		build: {
			outDir: fileName,
			assetsPublicPath: './'
		}
	};
});

export default viteConfig;

另附:当使用 vite build --mode development打包的时候可能会出现bash: vite: command not found的情况

解决方法:

如果在运行 vite build --mode development 时出现 “bash: vite: command not found” 错误,那通常是因为 Vite 的命令行工具没有正确安装或配置。

请确保您已经按照正确的步骤安装了 Vite,并在安装过程中全局安装了命令行工具。

您可以按照以下步骤来安装 Vite 和其命令行工具:

  1. 确保您的项目中已经安装了 Node.js(最好是 LTS 版本)和 npm(Node.js 包管理器)。

  2. 打开终端或命令行提示符,在项目的根目录下运行以下命令安装 Vite:

    npm install -g vite
    

    这将全局安装 Vite 的命令行工具。

  3. 安装完成后,你应该能够在终端中执行 vite 命令了,可以尝试运行 vite -h 来验证是否正确安装。

如果仍然出现 “bash: vite: command not found” 错误,请检查以下几点:

  1. 确保全局安装目录已添加到您的系统的环境变量中。您可以通过运行 npm bin -g 命令来查看全局安装目录的路径,然后将它添加到 PATH 环境变量中。

  2. 如果您是在 Windows 系统上安装,确保您的全局安装目录(如 %USERPROFILE%\AppData\Roaming\npm)在系统的 PATH 环境变量中。

如果您在按照以上步骤操作后仍然无法使用 vite 命令,建议您重新安装 Vite 或尝试其他解决方法,如使用 npx 运行 Vite: npx vite build --mode development。

如果该问题仍然存在或您有进一步的疑问,请提供更多关于您的操作系统、Vite 版本和安装过程的细节,以便更好地帮助您解决问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/770018.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

手机验证码登录 -- 手把手教你做ssm+springboot入门后端项目黑马程序员瑞吉外卖(七)

文章目录 前言一、短信发送1. 短信服务介绍2. 阿里云短信服务3. 代码开发 二、手机验证码登录1. 需求分析2. 数据模型3. 代码开发4. 功能测试 总结 前言 为了巩固所学的知识,作者尝试着开始发布一些学习笔记类的博客,方便日后回顾。当然,如果…

项目名称:网络聊天室

目录 一,简述 二,项目要求 三,程序流程图 服务器端: 客户端: 四,相关知识点 通信流程: 函数接口: 五,代码实现 客户端: 服务器: 主程序…

Android性能优化——启动优化

App 的启动速度是用户的第一体验,互联网中有一个八秒定律,如果用户等待八秒App 还没打开,70%的用户都会停止等待 一、启动分类 官方 App startup time 冷启动 耗时最多,衡量标准 热启动 最快。 后台~前台 温启动…

Git 新建本地仓库,推送到远程仓库

1、在项目的根目录右键 Git Bash Here 打开目录下的 git 命令 2、输入 git init 回车,初始化项目,把这个项目变成一个Git可以管理的仓库 项目根目录出现 .git 隐藏文件夹。这个目录是Git来跟踪管理版本库的,没事千万不要手动修改这个目录里面…

MateBook E Go Wi-Fi性能版(GK-W76)工厂模式win11原厂系统,含F10智能恢复功能

HUAWEI华为MateBook E平板笔记本电脑(GK-W76)原装出厂Windows11系统包,带F10一键智能还原 系统自带所有驱动、出厂主题壁纸LOGO、Office办公软件、华为电脑管家等预装程序 所需要工具:16G或以上的U盘 文件格式:zip 文件大小:1…

Linux基础(三)端口、进程及主机状态管理、环境变量、文件管理

目录 端口 nmap netstat 进程管理 查看进程 关闭进程 主机状态监控 系统资源top命令 磁盘信息监控 网络状态监控 环境变量 $符号 自己设置环境变量 自定义环境变量PATH Linux的文件和下载 压缩和解压 tar命令 zip和unzip命令 端口 每个电脑有一个ip地址&#xff…

自动化测试(一):网页结构分析与Google翻译2023.7.18爬虫实例

目录 1. 网页分析1.1 静态网页1.2 静态网页的爬取案例1.3 动态网页1.4 Google翻译2023.7.18爬虫实例1.4.1 基于网页分析的Google翻译2023.7.18爬虫实例1.4.2 基于Selenium的Google翻译2023.7.18爬虫实例 1. 网页分析 网页分析即通过检查元素,确定想提取的内容的区域…

pyright 的配置方法

珍惜发量,拥抱python😂 可以很快的构建一个平台管理程序,嵌入式设备,芯片厂商,都是python 的示例代码了 Lua 真的很棒,值得嵌入式领域的推广 实时性要求不高的,嵌入式设备,可以考虑lua python PC 的程序 ,python/Rust/C &#xf…

波奇学Linux:冯诺依曼和进程

现代计算机大多是冯诺依曼体系结构,这是一种硬件结构,规定了设备组成和设备类型。 存储器:内存,磁盘/U盘是外存是输入输出设备。 输入设备:键盘/磁盘/摄像头/话筒/网卡 输出设备:显示器,播放器硬件&#…

Spring6 初始

Spring6 初始 文章目录 Spring6 初始每博一文案:1. 初始 Spring61.1 OCP开闭原则1.2 依赖倒置原则DIP1.3 控制反转IoC 2. Spring 初始2.1 Spring特点2.2 Spring6 的下载:2.3 Spring的jar文件 3. 第一个Spring 程序的编写4. 第一个Spring程序详细剖析4.1 bean标签的i…

SQL28 计算用户8月每天的练题数量

select day(date) as day,count(question_id) from question_practice_detail where month(date)8 and year(date)2021 group by date

C语言如何计算结构体大小(结构体的内存对齐)

前言: 结构体的内存对齐是有关结构体内容的很重要一个知识点,主要考察方式是计算结构体的字节大小。 引言: 当我们对计算结构体一无所知,我们不妨自己思索如何计算,是不是直接计算结构体成员变量占用内存的大小呢&a…

共享与协作:时下最热门的企业共享网盘推荐!

现代企业面临着越来越大的数据存储和共享压力。为了提高公司的生产力和效率,许多企业开始寻找共享网盘解决方案。这些共享网盘平台可以帮助企业集中管理文件和数据,并方便快速地与同事、客户或供应商共享。以下是几款好用的企业共享网盘。 Zoho Workdriv…

Android BlueToothBLE入门(三)——数据的分包发送和接收(源码已更新)

学更好的别人, 做更好的自己。 ——《微卡智享》 本文长度为3675字,预计阅读12分钟 前言 接上篇《Android BlueToothBLE入门(二)——设备的连接和通讯(附Demo源码地址)》最后提到过蓝牙BLE通讯每次默认发送…

qt 32位编译 内存溢出 无法 运行在win7 32位

项目在 编译32位系统 内存溢出 设置成了x64 但是 最后在xp32位系统运行提示 在下载了n个dll之后发现这种状况无穷无尽,后来在查阅资料时发现可以直接打开qt安装目录下的“vcredist”文件夹,将对应位数的程序拷到win7电脑上,直接运行&…

优化营商环境:构建智能营销平台,助力企业经营发展

对于企业来说,没有了客户,就像身体没有了血液,将失去生命力和活力,续存难发展更难。区域产业又是由一个个企业集聚而形成,企业的成败也就决定着区域产业的兴衰。 在当今竞争激烈的商业环境中,传统的销售手段…

基于python的爬虫实现

定义 爬虫(Web crawler),也被称为网络爬虫、网络蜘蛛或网络机器人,是一种自动化程序,用于浏览互联网并收集网页内容。 基本原理 爬虫的工作原理是通过发送HTTP请求从网页服务器获取网页的内容,然后解析网…

何时使用Windbg静态分析?何时使用Windbg动态调试?

目录 1、概述 2、使用Windbg静态分析dump文件 2.1、异常捕获模块自动生成dump文件 2.2、从Windows任务管理器中导出dump文件 2.3、从正在动态调试的Windbg中使用命令导出dump文件 2.4、使用Windbg静态分析dump文件的一般步骤 3、使用Windbg动态调试目标进程 3.1、程序发…

Win10 配置NDK安装2023.7.19版本

NDK安装流程 1. 下载:2. 安装:3. 测试: 在大多数情况下,使用 Android SDK 管理器安装 NDK 会更轻松。本文单独安装NDK,但后续也可以使用管理器进行管理。 1. 下载: 地址 Fig.1 最新稳定版本 2. 安装&…

精益生产的五大管理工具:提升效率,降低成本!

在制造业的世界里,精益生产是一种以追求在制造过程的各个方面减少浪费为中心的方法。为了实现这一目标,有几个经常使用的管理工具。这些工具使制造商能够识别和消除生产过程中任何效率低下或浪费的资源。本文将讨论精益生产中使用的一些关键管理工具&…