00一、在package.json文件中添加vue
"scripts": { "serve": "vue-cli-service serve", //调用开发api "build": "vue-cli-service build", //上线 "test": "vue-cli-service build --mode test",//须要添加的内容,测试 },
00二、在根目录下建立.env文件,并配置ios
NODE_ENV = 'production' VUE_APP_FLAG = 'pro' //vue代码能够直接使用VUE_APP_名字
00三、在根目录下建立.env.test文件vue-cli
NODE_ENV = 'production' VUE_APP_FLAG = 'test' outputDir = test //能够更改打包时输出的目录名字,默认为dist
00四、在根目录下建立vue.config.jsexpress
module.express = { baseUrl: process.env.NODE_ENV === 'production' ? '/static/' : './', devServe: { port: 8080, // disableHostCheck:true,//处理host不识别问题 }, baseUrl: '/', //基本路径,不要随意更改 outputDir: process.env.outputDir, // 打包生成目录 assetDir: 'static', lintOnSave: false, runtimeCompiler: true, // 是否使用包含运行时编译器的 Vue 构建版本 productionSourceMap: false, // 生产环境的 source map }
00五、在main.js里配置api变量npm
/*第一层if判断生产环境和开发环境*/ if (process.env.NODE_ENV === 'production') { /*第二层if,根据.env文件中的VUE_APP_FLAG判断是生产环境仍是测试环境*/ if (process.env.VUE_APP_FLAG === 'pro') { //production 生产环境 axios.defaults.baseURL = 'http://api.xinggeyun.com';//路径 } else { //test 测试环境 axios.defaults.baseURL = 'http://192.168.0.152:8102';//路径
} } else { //dev 开发环境 axios.defaults.baseURL = 'http://192.168.0.152:8102';//路径
}
最后npm run test 或者 yarn run test json
ps:我用了outputDir = test,可是打包后仍然是dist默认文件名。不知道缘由,若是有知道的,麻烦分享一下axios
最后,但愿对你有所帮助!!api