configuration-vue.config.js devServer配置

1.vue.config.js

在 Vue CLI 项目中,vue.config.js 文件用于配置 Vue 项目的各种选项。其中,devServer 配置允许你自定义开发服务器的行为。

2.基本配置

javascript 复制代码
module.exports = {  
  devServer: {  
    // 开发服务器的地址  
    host: '0.0.0.0', // 默认为 localhost  
    port: 8080,      // 默认为 8080  
  
    // 是否启用 https  
    https: false,  
  
    // 是否自动打开浏览器  
    open: true,  
  
    // 代理配置  
    proxy: {  
      '/api': {  
        target: 'http://localhost:5000', // 目标服务器地址  
        changeOrigin: true,              // 是否允许跨域  
        pathRewrite: { '^/api': '' },    // 重写路径  
      },  
      '/auth': {  
        target: 'http://auth.example.com',  
        changeOrigin: true,  
      },  
    },  
  
    // 可以在开发服务器中使用 before 命令钩子  
    before: function (app, server) {  
      // app 是一个 express 实例  
      // server 是 http 服务器实例  
      console.log('开发服务器启动中...');  
    },  
  
    // 可以在开发服务器中使用 after 命令钩子  
    after: function (app, server) {  
      console.log('开发服务器已启动');  
    },  
  
    // 是否启用热重载  
    hot: true,  
  
    // 热重载的接口前缀  
    hotOnly: false,  
  
    // 开发服务器的头部信息  
    headers: {  
      'Access-Control-Allow-Origin': '*',  
    },  
  
    // 静态文件目录  
    static: './public',  
  
    // 监听的文件变动  
    watchOptions: {  
      poll: 1000, // 每秒轮询一次  
    },  
  
    // 是否启用压缩  
    compress: true,  
  
    // 客户端日志输出的级别  
    clientLogLevel: 'warning',  
  
    // 是否显示编译进度  
    progress: true,  
  
    // 覆盖 webpack-dev-middleware 的设置  
    devMiddleware: {  
      stats: 'errors-only',  
    },  
  
    // 覆盖 webpack-hot-middleware 的设置  
    hotMiddleware: {},  
  
    // 是否在浏览器控制台显示构建错误  
    overlay: {  
      errors: true,  
      warnings: false,  
    },  
  
    // 代理配置的其他选项  
    proxyOptions: {  
      // 代理请求的超时时间  
      timeout: 5000,  
    },  
  },  
};
  • host : 指定开发服务器的主机地址。设置为 '0.0.0.0' 可以让其他设备访问你的开发服务器。

  • port: 开发服务器的端口号。

  • https: 是否启用 HTTPS。

  • open: 是否在启动开发服务器时自动打开浏览器。

  • proxy: 代理配置,用于解决开发环境中跨域请求的问题。

  • before/after: 在开发服务器启动前后执行的钩子函数。

  • hot: 是否启用热重载(模块热替换)。

  • hotOnly: 仅启用热重载,禁用浏览器刷新。

  • headers: 为所有响应添加 HTTP 头部。

  • static: 静态文件的目录。

  • watchOptions: 文件系统监控选项。

  • compress: 是否启用 gzip 压缩。

  • clientLogLevel: 控制台日志输出的级别。

  • progress: 是否显示编译进度。

  • devMiddleware: 覆盖 webpack-dev-middleware 的设置。

  • hotMiddleware: 覆盖 webpack-hot-middleware 的设置。

  • overlay: 是否在浏览器控制台显示构建错误和警告。

  • proxyOptions: 代理配置的其他选项,如超时时间。

3.注意

  1. 代理配置 :使用代理配置时,要确保目标服务器地址正确,并且 changeOrigin 和 pathRewrite 等选项设置合理。

  2. 安全性 :在生产环境中不要启用 devServer 配置,这些配置仅用于开发环境。

  3. 热重载:热重载可以显著提升开发效率,但有时候可能会引入一些调试上的困难。

相关推荐
Jmyd012311 小时前
Web端3D营销展厅技术实现路径:从素材上云到线索回流的数据链路
前端·3d·性能优化·三维数字化
半个落月11 小时前
LangChain Agent 中间件实战(上):生命周期、状态、短路与工具包
javascript·langchain
砚凝霜11 小时前
【软考信息安全】第二十二章 Web服务器安全分析与增强——Apache与IIS
服务器·前端·安全
半个落月11 小时前
LangChain Agent 中间件实战(下):DeepAgents文件权限、长期记忆与对话摘要
javascript·langchain
u01110267513 小时前
JPG、PNG、WebP 怎么选?按透明度、体积和使用场景做判断
前端·javascript·vue.js·图像处理·ai作画
jerrywus13 小时前
让 AI 写完代码后交一份报告:我改造了 answer-me-with-html
前端·claude·cursor
派小心.14 小时前
小程序分享链路中来源参数的传递校验
大数据·前端·数据库·人工智能·小程序·数据分析
hhb_61814 小时前
一键生成数据看板,ECharts实战演示
前端·javascript·echarts
Java后端的Ai之路14 小时前
08_React组件API
前端·react.js·前端框架
小马不起床14 小时前
零基础玩转 FastAPI_09:前端基础工程构建
前端·状态模式·fastapi