vue 不同环境打包指令的配置(vue-cli2、vue-cli3、vite)

2024-04-09 07:36

本文主要是介绍vue 不同环境打包指令的配置(vue-cli2、vue-cli3、vite),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一个项目可能会有开发版本、上线版本、测试版本等等多个版本,不同的环境会有不同请求api接口,就需更改一些基本配置,这时候为不同环境配置不同的打包指令就很必要。

一、vue-cli2

1、安装 cross-env,它可以处理 windows 和其他 Unix 系统在设置环境变量的写法上不一致的问题。

npm i --save-dev cross-env

2、配置不同环境下的文件和参数,在 config 目录下创建test.env.js、prod.env.js、dev.env.js 文件并修改文件内容:

test.env.js:测试环境

'use strict'
module.exports ={ NODE_ENV: '"test"',EVN_CONFIG:'"test"',API_ROOT: '"xxx"'
}

prod.env.js:生产环境

'use strict'
module.exports = { NODE_ENV: '"production"',EVN_CONFIG:'"prod"',API_ROOT:'"xxx"'
}

API_ROOT 是后端接口服务IP或者域名。


3、打开 package.json 文件,在 scripts 里面配置指令名称

"scripts": { "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js","start": "npm run dev","build": "node build/build.js","build:test": "cross-env NODE_ENV=test env_config=test node build/build.js","build:prod": "cross-env NODE_ENV=production env_config=prod node build/build.js",}

4、打开 config / index.js 文件,在 build 最上面添加 prodEnv、testEnv,这里的参数会在build/webpackage.prod.conf.js中使用到
 

build: { prodEnv: require('./prod.env'),testEnv: require('./test.env'),index: path.resolve(__dirname, '../dist/index.html'),}//下面内容不需要修改

5、打开 build/webpackage.prod.js 文件,调整env常量的生成方式

//仅修改 env 
const env = config.build[process.env.env_config+'Env'];
//process.env.env_config+'Env' ==> prodEnv、testEnv

6、打开 build / build.js 文件,修改 spinner 的定义

'use strict'
require('./check-versions')()
//process.env.NODE_ENV = 'production'
const ora = require('ora')
const rm = require('rimraf')
const path = require('path')
const chalk = require('chalk')
const webpack = require('webpack')
const config = require('../config')
const webpackConfig = require('./webpack.prod.conf')
//const spinner = ora('building for production...')
var spinner = ora('building for ' + process.env.NODE_ENV + ' of ' + process.env.env_config+ ' mode...' )
spinner.start()
//下面内容不需要修改

7、打包

//测试环境打包
npm run build:test
//生产环境打包
npm run build:prod
二、vue-cli3

1、在 package.json 文件配置指令名称

"scripts": { "dev": "vue-cli-service serve","build": "vue-cli-service build","build:test": "vue-cli-service build --mode test","build:prod": "vue-cli-service build --mode prod"}

2、在 package.json 同级目录下创建 .env.test、.env.prod 文件,以及 config.js 文件,然后修改文件里的内容
.env.test:测试环境

NODE_ENV = 'test'
VUE_APP_TITLE = 'test'

.env.prod :生产环境

NODE_ENV = 'prod'
VUE_APP_TITLE = 'prod'

特别注意:
NODE_ENV = ‘prod’ 和 VUE_APP_TITLE = ‘prod’这个后面千万不要加 “ ; ” 如果加了你在获取 process.env.VUE_APP_TITLE的时候获取到的是 ’prod‘;,在环境判断的时候将会是很大的问题。
config.js:配置不同环境下对应的接口域名
 

let baseUrl = ''
switch (process.env.VUE_APP_TITLE) { case 'test': //测试baseUrl = "http://xxxx"breakcase 'prod': //生产baseUrl = "http://xxxx"breakdefault://本地baseUrl = "http://xxxxt"
}
export default baseUrl;
三、vite

1, 在 package.json 同级目录下创建 .env.test、.env.prod 文件,修改文件里的内容

.env.tese 测试环境

MODE = 'test'
VITE_APP_API=***

.env.prod 生产环境

MODE =production
VITE_APP_API='***'

2.在 package.json 文件配置指令名称

"scripts": {"dev": "vite","build": "npm run build:prod","build:prod": "vue-tsc --noEmit && vite build --mode production","build:test": "vue-tsc --noEmit && vite build --mode test","build:lpt": "vue-tsc --noEmit && vite build --mode lpt","build:dev": "vue-tsc --noEmit && vite build --mode development","serve": "npm run build && vite preview","lint": "eslint \"src/**/*.{vue,ts}\" --fix"},

这篇关于vue 不同环境打包指令的配置(vue-cli2、vue-cli3、vite)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/887551

相关文章

SpringBoot3.4配置校验新特性的用法详解

《SpringBoot3.4配置校验新特性的用法详解》SpringBoot3.4对配置校验支持进行了全面升级,这篇文章为大家详细介绍了一下它们的具体使用,文中的示例代码讲解详细,感兴趣的小伙伴可以参考... 目录基本用法示例定义配置类配置 application.yml注入使用嵌套对象与集合元素深度校验开发

IntelliJ IDEA 中配置 Spring MVC 环境的详细步骤及问题解决

《IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决》:本文主要介绍IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决,本文分步骤结合实例给大... 目录步骤 1:创建 Maven Web 项目步骤 2:添加 Spring MVC 依赖1、保存后执行2、将新的依赖

SpringBoot基于配置实现短信服务策略的动态切换

《SpringBoot基于配置实现短信服务策略的动态切换》这篇文章主要为大家详细介绍了SpringBoot在接入多个短信服务商(如阿里云、腾讯云、华为云)后,如何根据配置或环境切换使用不同的服务商,需... 目录目标功能示例配置(application.yml)配置类绑定短信发送策略接口示例:阿里云 & 腾

如何为Yarn配置国内源的详细教程

《如何为Yarn配置国内源的详细教程》在使用Yarn进行项目开发时,由于网络原因,直接使用官方源可能会导致下载速度慢或连接失败,配置国内源可以显著提高包的下载速度和稳定性,本文将详细介绍如何为Yarn... 目录一、查询当前使用的镜像源二、设置国内源1. 设置为淘宝镜像源2. 设置为其他国内源三、还原为官方

CentOS7更改默认SSH端口与配置指南

《CentOS7更改默认SSH端口与配置指南》SSH是Linux服务器远程管理的核心工具,其默认监听端口为22,由于端口22众所周知,这也使得服务器容易受到自动化扫描和暴力破解攻击,本文将系统性地介绍... 目录引言为什么要更改 SSH 默认端口?步骤详解:如何更改 Centos 7 的 SSH 默认端口1

Maven的使用和配置国内源的保姆级教程

《Maven的使用和配置国内源的保姆级教程》Maven是⼀个项目管理工具,基于POM(ProjectObjectModel,项目对象模型)的概念,Maven可以通过一小段描述信息来管理项目的构建,报告... 目录1. 什么是Maven?2.创建⼀个Maven项目3.Maven 核心功能4.使用Maven H

SpringBoot多数据源配置完整指南

《SpringBoot多数据源配置完整指南》在复杂的企业应用中,经常需要连接多个数据库,SpringBoot提供了灵活的多数据源配置方式,以下是详细的实现方案,需要的朋友可以参考下... 目录一、基础多数据源配置1. 添加依赖2. 配置多个数据源3. 配置数据源Bean二、JPA多数据源配置1. 配置主数据

将Java程序打包成EXE文件的实现方式

《将Java程序打包成EXE文件的实现方式》:本文主要介绍将Java程序打包成EXE文件的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录如何将Java程序编程打包成EXE文件1.准备Java程序2.生成JAR包3.选择并安装打包工具4.配置Launch4

HTML5中的Microdata与历史记录管理详解

《HTML5中的Microdata与历史记录管理详解》Microdata作为HTML5新增的一个特性,它允许开发者在HTML文档中添加更多的语义信息,以便于搜索引擎和浏览器更好地理解页面内容,本文将探... 目录html5中的Mijscrodata与历史记录管理背景简介html5中的Microdata使用M

html5的响应式布局的方法示例详解

《html5的响应式布局的方法示例详解》:本文主要介绍了HTML5中使用媒体查询和Flexbox进行响应式布局的方法,简要介绍了CSSGrid布局的基础知识和如何实现自动换行的网格布局,详细内容请阅读本文,希望能对你有所帮助... 一 使用媒体查询响应式布局        使用的参数@media这是常用的