上一篇博客介绍了vue-cli2.x配置build命令构建测试包和正式包,但现在前端开发vue项目大多数使用新版@vue/cli脚手架搭建vue项目(vue create project-name)

通过@vue/cli构建的项目无build和config配置文件夹,采用vue.config.js替代

项目中常分为开发环境、测试环境、正式环境,通常不同环境使用的服务端请求地址或一些资源文件是不同的,区分开发环境和(测试正式环境)可使用process.env.NODE_ENV来判断('development'/'production')但是通过npm run build构建的环境(测试环境和正式环境)的process.env.NODE_ENV都是production,要做区分判断通常在每次打包都手动去修改一些配置文件或通过判断域名等信息来区分,这是很不方便的,我们可以通过配置build命令来解决这个问题

在根目录下新建.env.build(正式)和.env.test(测试)两个文件,两个文件都声明变量NODE_ENV = 'production',此时使用另一个变量VUE_APP_CURRENTMODE来区分测试、正式环境

outputDir为打包文件存放的文件夹

此时代码中可通过process.env.NODE_ENVprocess.env.VUE_APP_CURRENTMODE两个变量来区分这三个环境做对应的变化

然后配置package.jsonscript脚本命令

npm run serve / npm run dev运行本地开发环境对应process.env.NODE_ENV = 'development'

npm run build:prod构建正式环境包,文件存放在dist文件夹

npm run build:test构建测试环境包,文件存放在test文件夹

npm run publish同时构建测试环境和正式环境包

修改vue.config.js中outputDir: process.env.outputDir

然后运行相关命令就可以了,这样就不需要每次打包去修改配置或通过代码判断域名等信息了

注:

每次build时都会自动清除上一次的打包的整个文件夹(dist/test)然后在打包完成时重新构建这两个文件夹,通过加--no-clean参数可取消该默认行为

注:

若在打包过程中出现该警告,表示打包文件过大

可修改vue.config.js

configureWebpack: config => {

...

return {

performance: {

"maxEntrypointSize": 10000000,

"maxAssetSize": 30000000

}

};

}

@vue/cli3+配置build命令构建测试包&正式包的更多相关文章

  1. vue-cli2.x配置build命令构建测试包&正式包

    项目开发中常分为开发环境.测试环境.正式环境 通过vue-cli或者@vue/cli脚手架搭建的项目默认提供了开发环境和正式环境的配置.可通过js获取当前域名或其他信息来判断当前为测试环境还是正式环境 ...

  2. vue cli3配置开发环境、测试环境、生产(线上)环境

    cli3创建vue项目是精简版的少了build和config这2个文件,所以配置开发环境.测试环境.生产环境的话需要自己创建env文件. 需要注意2点: 1.cli2创建项目生成的config文件里的 ...

  3. vue/cli3 配置vux

    安装各插件 试过 安装“必须安装”的部分亦可 1.安装vuex npm install vuex --save-dev 2.在项目里面安装vux[必须安装] npm install vux --sav ...

  4. vue/cli3 配置相对路径

    根目录下新建 vue.config.js 文件 const path = require('path') function resolve(dir){ return path.join(__dirna ...

  5. vue cli3.0 build 打包 的 js 文件添加版本号 解决 js 缓存问题

    在 vue.config.js 的文件中加入下面这段话 // vue.config.jsconst Timestamp = new Date().getTime();module.exports = ...

  6. vue cli3.0 build 打包 的 js 文件添加时间戳 解决 js 缓存问题

    // vue.config.jsconst Timestamp = new Date().getTime();module.exports = { configureWebpack: { // web ...

  7. vue cli3 配置postcss

    1.安装postcss-import,postcss-cssnext 包 2.修改package.json 将postcss响应的内容替换为 "postcss": { " ...

  8. 4.0、Android Studio配置你的构建

    Android构建系统编译你的app资源和源码并且打包到APK中,你可以用来测试,部署,签名和发布.Android Studio使用Gradle,一个高级的构建套件,来自动化和管理构建进程,同时可以允 ...

  9. Dubbo入门到精通学习笔记(十四):ActiveMQ集群的安装、配置、高可用测试,ActiveMQ高可用+负载均衡集群的安装、配置、高可用测试

    文章目录 ActiveMQ 高可用集群安装.配置.高可用测试( ZooKeeper + LevelDB) ActiveMQ高可用+负载均衡集群的安装.配置.高可用测试 准备 正式开始 ActiveMQ ...

随机推荐

  1. 在node中通过cors跨域。

    cors : 全称 cross origin resource share  跨资源共享 在nodejs 中可以通过在服务器端设置代码如下实现cors跨域 res.setHeader('Access- ...

  2. 【java】密码检查

    [问题描述] 开发一个密码检查软件,密码要求: 长度超过8位 包括大小写字母.数字.其它符号,以上四种至少三种 不能有相同长度超2的子串重复 [输入形式] 一组或多组长度超过2的子符串.每组占一行 [ ...

  3. 论文解读(GRCCA)《 Graph Representation Learning via Contrasting Cluster Assignments》

    论文信息 论文标题:Graph Representation Learning via Contrasting Cluster Assignments论文作者:Chun-Yang Zhang, Hon ...

  4. SpringMVC踩坑2

    Request processing failed; nested exception is org.mybatis.spring.MyBatisSystemException: nested exc ...

  5. Vuecli版本调整

    1.当前版本号查看 1.Windows+R打开命令提示符2.输入cmd3.vue --version或者vue -V(大写V) 2.版本操作 安装指定版本 情况一:目前处于3.0及以上 版本查看和卸载 ...

  6. 新手入门C语言第十章:C作用域规则

    C 作用域规则任何一种编程中,作用域是程序中定义的变量所存在的区域,超过该区域变量就不能被访问.C 语言中有三个地方可以声明变量: 在函数或块内部的局部变量 在所有函数外部的全局变量 在形式参数的函数 ...

  7. Java语言学习day29--8月04日

    今日内容介绍1.Object2.String3.StringBuilder ###01API概念 * A:API(Application Programming Interface) * 应用程序编程 ...

  8. 2021.11.10 fail树

    2021.11.10 fail树 https://blog.csdn.net/niiick/article/details/87947160 1. AC自动机与fail树的神奇关系 1.1 AC自动机 ...

  9. 2021.07.26 P1010 幂次方(数论)

    2021.07.26 P1010 幂次方(数论) [P1010 NOIP1998 普及组] 幂次方 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 重点: 1.二进制 题意: 用20 ...

  10. 微信小程序wx.login先执行onLaunch与onLoad加载顺序问题

    @ 目录 遇到问题 请求api返回需要先登录,实际上登录已成功 问题分析 解决问题 自定义回调函数 app.js index.js 扩展提问 学习交流 随机数字随机幸运数+ My Blog 技术交流 ...