vue2之vue.config.js最全配置教程

 更新时间:2022年06月30日 08:37:09   作者:旭霖  
本文主要介绍了vue2之vue.config.js最全配置教程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

vue.config.js 相当于之前的webpack 打包工具

配置目录:

const path = require('path');
 
function resolve(dir) {
  return path.join(__dirname, dir)
}
 
 
module.exports = {
 
  productionSourceMap: false,// 生产环境是否要生成 sourceMap
 
  publicPath: './',  //   部署应用包时的基本 URL
 
  outputDir: 'dist',  //   打包时输出的文件目录
 
  assetsDir: 'assets',  //   放置静态文件夹目录
 
  devServer:{},// dev环境下,webpack-dev-server 相关配置
 
  lintOnSave: false,//是否在开发环境下每次保存代码时都启用 eslint验证
 
  css:{},// css的处理
 
  chainWebpack:config=>{} //vue-cli内部的webpack配置
 
  pluginOptions:{},// 可以用来传递任何第三方插件选项
 
}

一 、 productionSourceMap

① productionSourceMap :false;

作用 : 把productionSourceMap 置为false,既可以减少包大小,也可以加密源码。这样打包后文件小而且别人看不到你的源码了。

②productionSourceMap :true;

作用 : 项目打包后,代码都是经过压缩加密的,如果运行时报错,输出的错误信息无法准确得知是哪里的代码报错。 有了map就可以像未加密的代码一样,准确的输出是哪一行哪一列有错。

二、 publicPath

项目打包时,打包出来的文件根目录,如果我们设置成“/”则我们打包后默认都是在dist目录下,假设我们设置成"/app",我们所打包的dist目录下会生成一个app目录,打包后的资源文件都是在app目录下的,这是所有的静态资源都会找不到,所以我们一般都是设置成“/”的。

三、outputDir

项目打包时输出的文件目录,比如说设置成“dist”,那么我们打包后的目录名称就是“dist”,我们设置成“build”,打包后的目录名称就是“build”。

四、assetDir

我们放置静态资源的目录,项目刚创建时,默认都是asset,所以一般我们不会动,直接配置 assetDir:"assets",当然,如果你不太习惯,也可以换成你想要的名字,只需要把目录名和这个名字时对应的,比如说你习惯用static,目录名称是static,那么这里就可以写成 assetsDir:"static"。

五、devServer

在dev环境下,webpck-dev-server的相关配置

devServer:{
 
port : 8080, //开发环境运行时的端口
 
https:false,//是否启用HTTPS协议
 
open:true, //项目运行成功后是否直接打开浏览器
 
hot:true,//是否开启热加载
 
overlay:true,//当出现编译错误或警告时,在浏览器中显示全屏覆盖。
 
proxy: {   //服务器代理
 
     '/api': {
        target: "api-url",   // 实际跨域请求的API地址
        secure: false,   // https请求则使用true
        ws: true,
        changeOrigin: true,  // 跨域
        // 请求地址重写  http://front-end/api/login ⇒ http://api-url/login
        pathRewrite: {
          '^/api': '/',
        }
 
    },
 
 
}

六、lintOnSave

前端程序员都会有一个通病,每次写完一点代码,哪怕写了一个单词,定义一个变量,都会习惯性的格式化一下代码,保存下代码,这个配置就是每次我们保存代码时,是否要经过esLint检查代码的,因为我个人不太习惯使用esLint,所以没有做过多了解,如果项目中有使用eslint的话,不想被检查到,就可以用,如果没有,可以不用写这个配置。

七、css的处理

css:{
 
loaderOptions:{
 
  less:{},
 
  scss:{},
 
  css:{}
 
 } 
 
}

①loaderOptions的作用:向 webpack 的预处理器 loader 传递选项。共享全局变量

②less的配置

less: {
       data:"@import "@/assets/styles/mixin.less" // 把less文件注入全局,在全局可以直接使用
    }

③scss的配置

scss: {
   prependData: `@import "@/assets/styles/theme.scss";`//全局注入scss文件,可以在文件内编写scss代码
  }

css: {
   prependData: `@import "@/assets/styles/reset.css";`//全局注入scss文件,可以在文件内编写css代码
  }

八、chainWebpack

CLI内部webpack配置,会被 webpack-merge 合并入最终的 webpack 配置,有两种写法。函数和对象的形式,这里只介绍我常用的函数形式。

chainWebpack:config=>{
 
  const types = ['vue-modules', 'vue', 'normal-modules', 'normal'];
 
  config.resolve.alias.set('@', resolve('src'))//配置src别名为@
}

还有很多基础配置,这些也是我比较常用的配置,大家可以做个参考

到此这篇关于vue2之vue.config.js最全配置教程的文章就介绍到这了,更多相关vue.config.js配置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Vue3的效率提升主要表现在哪些方面示例解析

    Vue3的效率提升主要表现在哪些方面示例解析

    Vue3带来了许多性能优化和效率提升的特性,本文将重点讨论Vue3在静态提升、预字符串化、缓存事件处理函数、Block Tree和PatchFlag方面的改进,我们将通过对比Vue2和Vue3的编译结果来说明这些方面的效率提升
    2023-12-12
  • vue在取对象长度length时候出现undefined的解决

    vue在取对象长度length时候出现undefined的解决

    这篇文章主要介绍了vue在取对象长度length时候出现undefined的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • 详解vue-cli 接口代理配置

    详解vue-cli 接口代理配置

    本篇主要介绍了vue-cli 接口代理配置,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-12-12
  • webpack vue项目开发环境局域网访问方法

    webpack vue项目开发环境局域网访问方法

    下面小编就为大家分享一篇webpack vue项目开发环境局域网访问方法,具有很好的参考价值,希望对大家有所帮助,一起跟随小编过来看看吧
    2018-03-03
  • 浅谈Vue响应式(数组变异方法)

    浅谈Vue响应式(数组变异方法)

    这篇文章主要介绍了浅谈Vue响应式(数组变异方法),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • Vue-router优化import引入过多导致index文件臃肿问题

    Vue-router优化import引入过多导致index文件臃肿问题

    这篇文章主要为大家介绍了Vue-router优化import引入过多导致index文件臃肿问题解决,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • uniapp使用uview的简单案例

    uniapp使用uview的简单案例

    uView是uni-app生态专用的UI框架,uni-app 是一个使用 Vue.js 开发所有前端应用的框架,这篇文章主要给大家介绍了关于uniapp使用uview的简单案例,需要的朋友可以参考下
    2023-03-03
  • Vue中的组件及路由使用实例代码详解

    Vue中的组件及路由使用实例代码详解

    组件系统是 Vue 的一个重要概念,因为它是一种抽象,允许我们使用小型、独立和通常可复用的组件构建大型应用。这篇文章主要介绍了Vue中的组件及路由使用 ,需要的朋友可以参考下
    2019-05-05
  • vue中的localStorage使用方法详解

    vue中的localStorage使用方法详解

    在Vue项目中可以直接使用localStorage,它支持Vue2和Vue3,在Vue2中,可以通过`localStorage.setItem()`、`localStorage.getItem()`和`localStorage.removeItem()`来保存、读取和删除数据,本文给大家介绍vue中的localStorage使用详解,感兴趣的朋友一起看看吧
    2025-03-03
  • vue 兄弟组件的信息传递的方法实例详解

    vue 兄弟组件的信息传递的方法实例详解

    这篇文章主要介绍了vue 兄弟组件的信息传递的方法,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08

最新评论