我的项目是vue-cli2搭建得(是个老项目),苦于切环境打包得痛苦,就想去网上学习前辈们得经验,来解决目前的困境,找了半天,几乎都是vue-cli3得教程,一口老血要喷出来得有木有,还能怎么办,继续找呗,皇天不负有心人,也不知道在哪找到了一个解决方法(万分感谢),就记录下vue-cli2怎样分环境打包:
1.vue-cli2分环境打包主要依赖于一个插件 cross-env
2.vue-cli2快速搭建一个项目,这个项目本身就存在了两个环境,一个是本地测试,就是npm run dev 启动的那个,还有一个是我们开发最后一步打包生成的线上的文件的命令 npm run build,了解这个框架是怎样实现分环境打包的,这样你就会清楚,我们也是在这个基础上进行的。
3.废话不多说了,看教程喽:
(1)首先,找到打包的核心文件 config/prod.env.js(我们只是为了实现打包时的不同环境的区别,本地测试,也可以这样做),把它复制两份,去你想要执行的命令名(比如 npm run zhengshi,zhengshi 就是他的命令,也可以随便起,只要自己可以区分开),如图:

(2)这里我的文件名是随便取得(不要学我,要保持良好代码规范)里面改变相应的环境变量,如图:

(3)接下来需要更改config/index.js,将新设置的环境变量,引入到index.js中,放在build模块下,如图:

(4)现在重头戏来了,找到build/webpack.prod.conf.js,这个文件是执行打包的核心文件,将原有的const env = require('../config/prod.env'),注释掉,换成const env = config.build[process.env.env_config+'Env'],如图:

(5)最后,在package.json中加上需要打包的命令,如图:

(5)可以尝试npm run zhengshi 等相应命令,来打包不同环境下的代码了;如图:

其实,页面中也可根据不同环境展示不同页面,大功告成!!!