vue.config.js中的devServer

真能扯啊。

按照我的经历,我认为学习vue一个障碍和困难,是不容易了解它整个项目结构。*.vue本身的内容较容易掌握,但更大的方面,比如它整个项目的运行机制,路由,配置,就比较讳莫如深了。资料很少,说的人也是不知从哪里抄的,没有说清楚。对于像我这样普通的开发者来说,让我不用啥框架,直接用空白项目捣鼓出一个看得过去的前端,我会感到困难重重,这也不知,那也不懂,无从下手。这其中,就包括这个vue.config.js。

vue.config.js,就是vue项目的配置文件咯。一度传闻vue3创建项目时,默认是不提供这个文件,要用的话只能自己手动创建。但一旦创建,vue又会自动地优先使用其中的配置。这给人一种很扯的感觉。不过,不久前我创建vue3项目,里面是有vue.config.js的。其实,vue也没有什么好神秘的,它就是一个巨大的语法糖,或者解释器。虽然它创建了这样那样的书写结构,但最终是要编译成原始的js。你看vue3的语法,我感觉并不比vue2更高明,反而有种累赘和啰嗦的感觉,估计VUE4还要来个大改,折腾不止,至死方休。

说回vue.config.js。vue.config.js里面,同样有许多神秘的咒语。不过后来逐渐有了一些发现。下面这段代码就摘自我们之前一个vue项目的vue.config.js。

module.exports = {
  devServer: {
    port: 8090, // 端口号,如果端口号被占用,会自动加1
    host: '0.0.0.0',// 主机名, 127.0.0.1,  真机 0.0.0.0
    https: false, //协议
    open: false, //启动服务时自动打开浏览器访问
    disableHostCheck: true,
    proxy: {
      '/api':{
        target:PROXY_API_BASE_URL,
        pathRewrite:{
          "^/api":""
        }
      },
      '/webapps':{
        target:PROXY_BASE_URL,
        pathRewrite:{
          "^/webapps":"/webapps"
        }
      },
      '/javapubzy':{
        target:PROXY_BASE_URL,
        pathRewrite:{
          "^/javapubzy":"/javapubzy"
        }
      },
      '/arcgis':{
        target:PROXY_BASE_URL,
        pathRewrite:{
          "^/arcgis":"/arcgis"
        }
      }
    }
  },
  。。。
}

代码中,devServer算是系统的保留字,用来配置我们的开发环境,从名字也能看出来。所以,别看它里面写了这么多,又是端口,又是代理,让人一看就头大,其实只是用于我们本机开发和调试。一旦发布和打包,就与它无关了。我们将发布包部署到nginx,端口和转发,就遵循nginx的设置:

http {
    include       mime.types;
    default_type  application/octet-stream;	
    sendfile        on;

	server {
	    listen       8081;
        server_name  192.168.10.8;

		location / {
			root   E:/code/web/dist;		
			index  index.html;
			try_files $uri $uri/ /index.html;
		}

		location /api/ {
			proxy_pass http://192.168.10.9:8090/;#必须斜杠/结尾
			proxy_set_header   X-Forwarded-Proto $scheme;
			proxy_set_header   Host              $http_host;
			proxy_set_header   X-Real-IP         $remote_addr;
		}

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
	}
}

咦,孰为汝多知乎。

在这里插入图片描述
在这里插入图片描述

  • 11
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值