const chalk =require('chalk')
const path=require('path')
function resolve(dir){
return path.join(__dirname,dir)
}
module.exports={
//没有书写outputDir属性 默认dist 对应dev.assetSubDirectory
outputDir:'navigation_WEB_new'
//http://vue.org/v2/guide/installtion.html#Runtime-Comiler-vs-Runtime-only
compiler:false,
//在vue-cli.3.3版后,baseUrl被废除了,因此这把要写成pubilcPath(资源地址)
pubilcPath:process.env.NODE_ENV=='production'? process.env.VUE_app_PUBLICPATH:'/'
//CSS相关配置
css:{
//是否使用css分离插件,ExtracTextPlugin
extract:true,
//开启CSS source maps?
sourceMap:false,
//css预设器配置项
loaderOptions:{}
//启用css modules for all css / pre-processor files.
//mpdules:false
},
//运行配置
devServer:{
//host:'0.0.0.0',
port:'8222',//代理端口
open:false,//项目启动时是否自动打开浏览器,我这里设置为false,不打开,true表打开
proxy:{
'/api':{
//target:'10.88.234.106',
target:process.env.VUE_APP_HTTP_URL,
changeOrigin:true,//是否跨域
pathRewrite:{//重写路径
‘^/api’:'/' //或者‘http//localhos:8080/api’
},
//既然我们设置了代理,则所有请求Url都写称/api/xxx/xxx,那请求如何知道我们到底请求的时
//那个服务器的数据呢 因此这里的意义在于,以/api开头的url请求,代理都会知道实际上应该请求哪里
//‘我时服务器/api’,后面的/api根据实际请求地址决定,即我的请求url:/api/test/test,被代理后请求的则是http://我的服务器/api/test/test
}
}
},
chainWebpack:config =>{
//提示输出的那个地址
console.log(chalk.blueBright('\n\n running '+ process.env.VUE_APP_PROJ_NAME +':')+
chalk.yellowBright(process.env.VUE_APP_HTTP_UPL+'please wait ...\n');
//判断不同环境 做相应处理
if(process.env.NODE_ENV ==='production'){
//测试生产环境,不压缩js代码
if(process.env.VUE_APP_TITLE ==='appha'){
config.optimization.minimize(false)
}
}
//set第一个参数:设置的别名,第二个参数:设置的路径
config.resolve.alias
.set('@',resolve('./src'))
.set('components',resolve('./src/components'))
.set('assets',resolve('./src/assets'))
.set('views',resolve('./src/views'))
.set('network',resolve('./src/network'))
//注意store和router没必要配置
config.plugin('html').tap(args=>{
args[0].title='公墓投研系统'
return args
})
)
}
}