123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- const path = require('path')
- // 拼接路径
- function resolve (dir) {
- return path.join(__dirname, dir)
- }
- // 基础路径 注意发布之前要先修改这里
- let baseUrl = '/'
- // 演示项目自动构建使用
- if (process.env.VUE_APP_TRAVIS === 'TRUE') baseUrl = '/enrol/'
- module.exports = {
- baseUrl: baseUrl, // 根据你的实际情况更改这里
- lintOnSave: true,
- devServer: {
- publicPath: baseUrl, // 和 baseUrl 保持一致
- proxy:{
- '/StdUpload/':{
- target: 'http://qmth.hmsoft.cn/',
- },
- '/ExamCate/':{
- target: 'http://qmth.hmsoft.cn/',
- },
- '/CertPhoto/':{
- target: 'http://qmth.hmsoft.cn/',
- },
- '/frame/':{
- target: 'http://qmth.hmsoft.cn/',
- },
- '/enrol/': {
- target: 'http://qmth.hmsoft.cn/',
- // target: 'http://192.168.1.102:8080/hmsoft-enrol',
- // target: 'http://192.168.1.103:8080/hmsoft-enrol',
- // target: 'http://192.168.1.103:8080/hmsoft-enrol',
- // target: 'http://192.168.1.90:8081/hmsoft-art',
- // target: 'http://192.168.1.90:8081/hmsoft-art',
- // target: 'http://127.0.0.1:8081/bk',//设置你调用的接口域名和端口号 别忘了加http
- changeOrigin: true,
- // pathRewrite: {
- // '^/enrol': ''//这里理解成用‘/api’代替target里面的地址,后面组件中我们掉接口时直接用api代替 比如我要调用'http://40.00.100.100:3002/user/add',直接写‘/api/user/add’即可
- // }
- onProxyRes(proxyRes, req, res) {
- var cookies = proxyRes.headers['set-cookie']
- if (cookies == null || cookies.length == 0) {
- delete proxyRes.headers['set-cookie']
- return
- }
- for (var i = 0,n = cookies.length; i < n; i++) {
- if(cookies[i].match(/^JSESSIONID=[^;]+;[\s\S]*Path=\/[^;]+/)){
- cookies[i] = cookies[i].replace(/Path=\/[^;]+/,'Path=/');
- }
- }
- proxyRes.headers['set-cookie'] = cookies;
- }
- }
- }
- },
- // 默认设置: https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-service/lib/config/base.js
- chainWebpack: config => {
- // 解决 cli3 热更新失效 https://github.com/vuejs/vue-cli/issues/1559
- config.resolve
- .symlinks(true)
- // markdown
- config.module
- .rule('md')
- .test(/\.md$/)
- .use('text-loader')
- .loader('text-loader')
- .end()
- // i18n
- config.module
- .rule('i18n')
- .resourceQuery(/blockType=i18n/)
- .use('i18n')
- .loader('@kazupon/vue-i18n-loader')
- .end()
- // svg
- const svgRule = config.module.rule('svg')
- svgRule.uses.clear()
- svgRule
- .include
- .add(resolve('src/assets/svg-icons/icons'))
- .end()
- .use('svg-sprite-loader')
- .loader('svg-sprite-loader')
- .options({
- symbolId: 'd2-[name]'
- })
- .end()
- // image exclude
- const imagesRule = config.module.rule('images')
- imagesRule
- .test(/\.(png|jpe?g|gif|webp|svg)(\?.*)?$/)
- .exclude
- .add(resolve('src/assets/svg-icons/icons'))
- .end()
- // 重新设置 alias
- config.resolve.alias
- .set('@', resolve('src'))
- // babel-polyfill 加入 entry
- const entry = config.entry('app')
- entry
- .add('babel-polyfill')
- .end()
- }
- }
|